Это руководство по переносу предназначено для разработчиков, которые интегрировали виджет автозаполнения мест (предварительная версия) до версии 3.59.8. В этом руководстве рассказывается, как перейти на последнюю версию.
Изменения
- Событие
gmp-placeselectпереименовано вgmp-select. - Событие
gmp-selectтеперь возвращает экземплярplacePrediction, а неplace.PlacePrediction.toPlace()возвращает правильный объектPlace. - Мероприятие
gmp-requesterrorтеперь называетсяgmp-error.
Этапы перехода
Чтобы перейти на последнюю версию виджета Place Autocomplete, выполните следующие действия:
- Убедитесь, что в Cloud Console для вашего проекта включен Places API (новая версия).
- Добавьте 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');
});