TypeError: Невозможно прочитать свойство defaultView из неопределенного - Angular - PullRequest
0 голосов
/ 25 июня 2019

У меня ошибка во время выполнения, из-за которой в моем угловом приложении отображается трассировка стека defaultView, и это мешает мне двигаться дальше в моем проекте.


Ошибка: ERROR Error: Uncaught (in promise): TypeError: Cannot read property 'defaultView' of undefined TypeError: Cannot read property 'defaultView' of undefined

Я гуглил это, но ни в одном из вопросов нет угловатости. Так что я думаю, что это первый пример defaultView с угловым.

У меня есть код, который берет адрес и выводит маркер на карту. Я получил ошибку от https://developers.google.com/maps/documentation/javascript/geocoding


Код в Stackblitz : https://stackblitz.com/edit/angular-gib2mq.

index.d.ts в корневой папке заставляет оператор импорта работать: import { } from 'googlemaps';

declare module "googlemaps";

У меня также установлено @types/googlemaps через npm install --save @types/googlemaps


Я хочу, чтобы ошибка исчезла, но это происходит каждый раз, когда я запускаю свое приложение.

Спасибо!

1 Ответ

1 голос
/ 25 июня 2019

Похоже, у вас довольно большое недопонимание того, как использовать пакет @agm. Это нормально! Некоторые заметки:

  • вам не нужны this.map или типы latlng. Вы просто передаете номера для компонентов
  • вызовите triggerResize (true) на карте, когда вам нужно перецентрировать
  • вам не нужно явно импортировать библиотеки в конфигурации ... не знаю, почему это на самом деле. Просто убедитесь, что ключ API, который вы используете, имеет их включенные
  • наконец, вам нужно задать статическую высоту для карты или для ее родителя (по причинам, которые я не буду обсуждать). Вы всегда можете установить высоту с помощью машинописи.

Рабочий стек (без ключа API): https://stackblitz.com/edit/angular-yebacm

Удачи!

изменить: вам также не нужно declare module "googlemaps";

...