Ошибка устаревания API Карт Google в веб-приложении VueJS: utc_offset устарела с ноября 2019 года и будет отключена в ноябре 2020 года - PullRequest
0 голосов
/ 13 января 2020

В настоящее время я получаю следующую ошибку в моем VueJS веб-приложении.

utc_offset устарело с ноября 2019 года и будет отключено в ноябре 2020 года. Вместо этого используйте utc_offset_minutes.

Согласно Документация по API Карт Google :

Поля Мест открывания_открытия_опозиции_в_бук и utc_offset устарели с 20 ноября 2019 года и будут изменены отключено 20 ноября 2020 года. Эти поля устарели ТОЛЬКО в библиотеке мест, API Карт JavaScript. В этом руководстве показано, как обновить код для прекращения использования этих полей.

Единственная проблема заключается в том, что я определенно не использую utc_offset в любом месте моего приложения Vue напрямую. Я подтвердил это, выполнив глобальный поиск слова «utc_offset» в моем приложении. Я также никогда не вспоминаю доступ к этому указанному c свойству.

Почему я получаю это предупреждение об устаревании, если я не использовал это свойство?

Ниже так выглядит моя трассировка стека:

enter image description here

Следующий фрагмент кода показывает, что делает метод clearAllCardsAndFilters.

methods: {
    clearAllCardsAndFilters() {
        this.clearActiveCardListingId();
        this.clearFilterCards();
    },
    clearActiveCardListingId() {
        this.$store.commit('clearActiveCardListingId');
    },

Следующий фрагмент кода показывает, что делает мутация clearActiveCardListingId в Vuex. Он просто устанавливает свойство activeCardListingId в Vuex на null.

    clearActiveCardListingId(state) {
        state.activeCardListingId = null;
    },

1 Ответ

0 голосов
/ 14 января 2020

Я использовал API Google Адресов без указания каких-либо полей. Это предупреждение об устаревании исчезнет, ​​если вы укажете поля следующим образом. Убедитесь, что вы не указали utc_offset в качестве поля, иначе сообщение вернется.

new google.maps.places.PlacesService(attrContainer).getDetails({
  placeId: '...',
  fields: ['opening_hours','utc_offset_minutes'],
  }, function (place, status) {
    if (status !== 'OK') return; // something went wrong
    const isOpenAtTime = place.opening_hours.isOpen(new Date('December 17, 2020 03:24:00'));
    if (isOpenAtTime) {
        // We know it's open.
    }

    const isOpenNow = place.opening_hours.isOpen();
    if (isOpenNow) {
        // We know it's open.
    }
});
...