Получение ошибки типа при реализации здесь Map Api - PullRequest
0 голосов
/ 19 июня 2020

Я пытаюсь добавить карты через hereMaps Api в моем веб-приложении, которое находится в Angular7. При создании платформы с использованием служебного модуля, который

this.platform = new H.service.Platform({
          "app_id": "{9qrlA6ZVcLPDw16Mkclk}",
      });

, я получаю следующее высказывание:

ERROR Error: Uncaught (in promise): TypeError: Cannot read property 'service' of undefined
TypeError: Cannot read property 'service' of undefined

Я установил npm here- js -api пакет, а также объявил сервисный модуль

<script src="https://js.api.here.com/v3/3.0/mapsjs-core.js" type="text/javascript" charset="utf-8"></script>

в src / index. html. Но все же я Я получаю ошибку того же типа.!

Возможные решения?

1 Ответ

0 голосов
/ 19 июня 2020

Добавьте свой файл сценария в свой angular. json в разделе сценария

"scripts": [
  ...
  "./node_modules/heremap/dist/heremap.min.js",
  "./node_modules/heremap/dist/libhere.min.js",
]

Затем стили в разделе syle

"styles": [
  ...
  "./node_modules/heremap/css/heremap.css",
]

Теперь вам нужно объявить Heremap из окно, а затем используйте его:

declare const hm = window.heremap;

export class YourService {
  // Now you can use hm
  // eg.
  hm.config({
    app_id: APP_ID,
    app_code: APP_CODE,
  }); 
  hm.getAvailableMapStyle().then(style => {
    console.log("Style ", style);
  });

  // show map fragment
  // to see console message, open debugger window
  hm.map(
    "map", {
      zoom: 6,
      scheme:"satellite.day",
      viewChange: (zoom, coord) => {
        console.log("viewchange", zoom, coord)
      },
      click: (coord, button, key) => {
        console.log("click", coord, button, key)
      },
      keydown: (key) => {
        console.log("key down", key)
      }
    }
  );
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...