Данное руководство по миграции предназначено для разработчиков, которые использовали интеграцию с виджетом автозаполнения мест (предварительная версия) до версии 3.59.8 . В этом руководстве показаны изменения, которые необходимо внести для использования последней версии.
Изменения
- Событие
gmp-placeselectпереименовано вgmp-select. - Теперь событие
gmp-selectвозвращает экземплярplacePrediction, а не экземплярplace.PlacePrediction.toPlace()возвращает правильный объектPlace. - Событие
gmp-requesterrorтеперь называетсяgmp-error.
Этапы миграции
Чтобы перенести интеграцию виджета автозаполнения мест на последнюю версию, выполните следующие действия:
- Убедитесь, что API Places (новый) включен для вашего проекта в консоли Cloud.
- Добавьте Places API (новый) в список ограничений API для используемого вами ключа API.
- В вашей среде разработки выполните и протестируйте следующие изменения:
Обновить обработчик событий
Замените gmp-placeselect на gmp-select , как показано в следующих фрагментах кода:
До
autocompleteElement.addEventListener('gmp-placeselect', (event) => {
console.log(event.place);
});
После
autocompleteElement.addEventListener('gmp-select', (event) => {
console.log(event.placePrediction.toPlace());
});
Измените componentRestrictions на includedRegionCodes
Измените параметры экземпляров componentRestrictions , чтобы они использовали поле includedRegionCodes , как показано в следующих фрагментах кода.
До
const autocompleteElement = new google.maps.places.PlaceAutocompleteElement({
componentRestrictions: {country: ['US']},
...
});
После
const autocompleteElement = new google.maps.places.PlaceAutocompleteElement({
includedRegionCodes: ['US'],
...
Измените types на includedPrimaryTypes
Измените экземпляры types , чтобы они использовали поле includedPrimaryTypes , как показано в следующих фрагментах кода.
До
const autocompleteElement = new google.maps.places.PlaceAutocompleteElement({
types: ['restaurant'],
});
После
const autocompleteElement = new google.maps.places.PlaceAutocompleteElement({
includedPrimaryTypes: ['restaurant'],
});
Замените gmp-requesterror на gmp-error
Замените экземпляры gmp-requesterror на gmp-error , как показано в следующих фрагментах кода:
До
autocompleteElement.addEventListener('gmp-requesterror', (event) => {
console.log('an error occurred');
});
После
autocompleteElement.addEventListener('gmp-error', (event) => {
console.log('an error occurred');
});