geolocation

Статический объект.

Предоставляет информацию о местоположении пользователя.

Методы

Методы

Имя Возвращает Описание
get ([options])

vow.Promise

Пытается определить местоположение пользователя. Возвращает объект-promise, который будет либо подтверждён объектом с полем geoObjects, либо отклонён с сообщением об ошибке. Поле geoObjects является экземпляром GeoObjectCollection . В коллекцию будет добавлен объект, обозначающий текущее местоположение пользователя.

Описание методов

get

{vow.Promise} get([options])

Пытается определить местоположение пользователя. Возвращает объект-promise, который будет либо подтверждён объектом с полем geoObjects, либо отклонён с сообщением об ошибке. Поле geoObjects является экземпляром GeoObjectCollection . В коллекцию будет добавлен объект, обозначающий текущее местоположение пользователя.

Возвращает объект-promise.

Параметры:

Параметр Значение по умолчанию Описание
options

Тип:

options.autoReverseGeocode true

Тип:

true - автоматически прогеокодировать положение пользователя, false - вернуть как есть. В случае автоматического геокодирования объект, обозначающий текущее местоположение пользователя, будет иметь структуру, аналогичную результату выполнения geocode .

options.mapStateAutoApply false

Тип:

true - при добавлении на карту автоматически выставить центр и уровень масштабрования карты так, чтобы показать текущее местоположение пользователя, false - ничего не делать.

options.provider 'auto'

Тип:

Провайдер геолокации. Допустимые значения: 'yandex' - геолокация по данным Яндекса на основе ip пользователя, 'browser' - встроенная браузерная геолокация, 'auto' - провести геолокацию всеми доступными способами и выбрать лучшее значение.

options.timeout 30000

Тип:

Время ожидания ответа в мс.

options.useMapMargin true

Тип: Boolean

Нужно ли учитывать отступы карты map.margin.Manager при автоматическом выставлении центра и уровня масштаба карте.

Примеры:

1.

ymaps.geolocation.get({
    // Выставляем опцию для определения положения по ip
    provider: 'yandex',
    // Карта автоматически отцентрируется по положению пользователя.
    mapStateAutoApply: true
}).then(function (result) {
    myMap.geoObjects.add(result.geoObjects);
});

2.

ymaps.geolocation.get({
    // Зададим способ определения геолокации
    // на основе ip пользователя.
    provider: 'yandex',
    // Включим автоматическое геокодирование результата.
    autoReverseGeocode: true
}).then(function (result) {
    // Выведем результат геокодирования.
    console.log(result.geoObjects.get(0).properties.get('metaDataProperty'));
});