如何删除名称" google"在Angular?

时间:2017-12-29 20:29:45

标签: javascript angular google-maps typescript typescript-typings

我试图找出the example of geocoding,我在事件处理程序中有以下代码,点击按钮。

locate() {
  const coder = google.maps.Geocoder();
  coder.geocode(
    { address: "stockholm" }, 
    (result, status) => { ... });
}

按照的名称,VS代码突出显示名称​​ google ,并警告无法找到该名称。我不确定对象来自何处,我也不知道如何声明它以使其不被标记为未知/未声明。

当我在Chrome的控制台中运行google时,它实际上可以生成某种带有地图的对象。但是,FireFox控制台中的相同操作并不能产生任何有用的功能。

那些googly-mappy对象是什么?我如何学习Angular它在那里?

2 个答案:

答案 0 :(得分:1)

在你的导入下,你可以告诉typescript编译器在运行时会有一个全局变量google

// component.ts
declare const google;

答案 1 :(得分:1)

你通过声明它来告诉angular一个外部JavaScript全局对象或lib,如前面的答案所示:

declare const google: any;

你也可以教你的打字稿所有正确的类型,以便VSCode甚至可以帮助你:

npm install @types/googlemaps --save