[type]
Подробнее о значениях в разделе «Использование модуля» / «Использование полноэкранного режима».
filterMapObjects (options) *
Фильтрует существующие объекты. Аргумент, описывающий фильтр, может быть строкой, объектом или отсутствовать.
Аргументы | Тип | Поля | Тип | Что означает |
options | Object | query | String | Строка с условиями фильтра |
mode | String | Режим | ||
String | Строка с условиями фильтра |
При передаче в аргумент строки новые условия добавляются к существующим, что соответствует значению 'add' для параметра [mode].
Подробнее фильтрация объектов описана в разделе «Использование модуля» / «Фильтрация объектов».
Удаляем предыдущий фильтр и устанавливаем новый
$GeoMapp. filterMapObjects({
query: 'description*=круглосуточно',
mode: 'remove'
});
Добавляем к текущему фильтру новый параметр
$GeoMapp. filterMapObjects('description*=круглосуточно');
Это равносильно вызову с явным указанием [mode]
$GeoMapp. filterMapObjects({
query: 'description*=круглосуточно',
mode: 'add'
});
Поскольку параметр [mode] по умолчанию принимается равным 'add', то этот вызов аналогичен предыдущим
$GeoMapp. filterMapObjects({
query: 'description*=круглосуточно'
});
Служебные методы
setTitle (value)
Устанавливает заголовок в верхней части модуля.
Аргументы | Тип | Что означает |
value | String | Новый заголовок |
— | undefined | Восстановить заголовок |
Восстановление заголовка означает возврат к значению, переданному в модуль при инициализации. Если это значение отсутствует, будет взят заголовок документа [document. title].
В текущей версии модуля для мобильных устройств используется для смены заголовка в приложении.
showError (messageList)
Выводит сообщение об ошибках.
Аргументы | Тип | Что означает |
messageList | String | Одно сообщение |
Array | Несколько сообщений одновременно |
При показе ошибки скрываются все панели.
removeError ()
Убирает сообщение об ошибках и очищает стек сообщений об ошибках.
Панели возвращаются в исходный вид.
Защита компонента
Внешние стили
Для обеспечения максимальной защиты от стилей оформления структура компонента состоит из уникальных элементов <bxmap> за исключением тех, чей функционал значительно отличается от обычных элементов:
IMG, A, FORM, INPUT, BUTTON, SELECT, TEXTAREA
В связи с использованием части стандартных элементов категорически не рекомендуется использовать простые и составные селекторы с последним селектором в виде имени перечисленных тэгов, а также универсальным селектором.
Классы используемых элементов имеют приставку bxmap-, что исключает случайное совпадение с используемыми сторонними стилями на странице.
Примеры паразитных правил:
#someid img{
display: block;
}
#someid a{
text-decoration: none;
}
#someid *{
line-height: 150%;
}
Защита от некорректных данных
Данные, которые содержатся в инициализации, должны быть корректными и достаточными для построения карты. Тем не менее, как в процессе обработки данных, так и в процессе загрузки служебных файлов могут возникать ошибки. Эти ошибки или выводятся в виде оформленного сообщения с соответствующим текстом, либо, по возможности, исправляются, а также используются для альтернативной работы.
Текст ошибок управляется с помощью соответствующих параметров в объектах [parseMessages] и [routeMessages].
Восстановление параметров и элементов
Часть параметров и контейнер можно постараться восстановить, и только в случае неудачи формировать ошибку с её последующей обработкой.
NO_CATS
Категории в компоненте используются для вывода названия и параметров иконки логотипа групп объектов. Отсутствие описания категорий не воспринимается как терминальное событие, если есть объекты, поскольку в них присутствует идентификатор категории.
При восстановлении используется значение параметра [catAbstractName] в объекте [interfaceText]. Логотип для такой категории отсутствует (при условии его использования), а для объектов используется абстрактный маркер.
Восстановление невозможно на странице категорий в мобильной версии, поскольку в списке передаваемых параметров объектов нет. Также такое сообщение будет добавлено в лист ошибок, если нет ни категорий, ни объектов. В этой ситуации выводится сообщение об ошибке.
Ошибка при загрузке основных скриптов
При загрузке пула скриптов, перечисленных в параметре [libs], могут возникнуть ошибки разного рода, которые разделены на 2 секции.
COMMON_SCRIPT_NOT_LOADED
В случае отсутствия хотя бы одного скрипта по указанному адресу выполнение построения останавливается и выводится ошибка.
В случае отсутствия положительного решения в течение времени, определяемым с помощью параметра [responseTime], дальнейшая работа останавливается с выводом соответствующей ошибки.
ERRORS_COMMON_LOADING
Помимо отсутствия скрипта по указанному адресу возможна ситуация, когда загруженный контент не является скриптом. В этой ситуации о такого рода проблеме можно судить только по ошибке общего рода (событие Error). Сложность состоит в том, что ошибка во время загрузки скриптов может быть обусловлена другими скриптами, включёнными на страницу.
Такая ситуация может возникнуть только при самостоятельном подключении своих скриптов.
Для управления ситуацией введён параметр [listenMainScriptLoading], положительное значение которого заставляет реагировать на возникновение ошибки во время загрузки основных скриптов выводом сообщения. По умолчанию параметр имеет значение [false].
Ошибка при загрузке скриптов карты
Аналогично предыдущему пункту при загрузке пула скриптов выбранного типа карты, перечисленных в параметре [mapScript], могут возникнуть ошибки разного рода, которые также разделены на 2 секции.
MAP_SCRIPT_NOT_LOADED
В случае отсутствия хотя бы одного скрипта по указанному адресу выполнение построения останавливается и выводится ошибка.
В случае отсутствия положительного решения в течение времени, определяемым с помощью параметра [responseTime], дальнейшая работа останавливается с выводом соответствующей ошибки.
ERRORS_MAP_LOADING
Помимо отсутствия скрипта по указанному адресу возможна ситуация, когда загруженный контент не является скриптом. Такая ситуация может возникнуть только при самостоятельном задании своих скриптов или переписывании адреса скрипта для выбранного типа карты.
В этой ситуации о такого рода проблеме можно судить только по ошибке общего рода (событие Error). Сложность состоит в том, что ошибка во время загрузки скриптов может быть обусловлена другими скриптами, включёнными на страницу.
Для управления ситуацией введён параметр [listenMapScriptLoading], положительное значение которого заставляет реагировать на возникновение ошибки во время загрузки скриптов карты выводом сообщения. По умолчанию параметр имеет значение [false].
MAP_DENIED
Для мобильной версии, в которой на данный момент для прокладки маршрута используется отдельная страница, при отсутствии ответа от скрипта карты дальнейшие действия бессмысленны. Однако, на случай возникновения ситуации, в которой использование карты случайно запрещено с помощью параметра [withoutMap], текст ошибки сделан уникальным.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |


