【发布时间】:2022-05-23 05:19:37
【问题描述】:
即使我为 agm-maps 设置了选项,我也会在很短的时间内看到我的选项,然后它们就会全部消失。我无法理解这种行为。我创建了一个简单的项目只是为了演示 Stackblitz 中的问题,我也将在这里分享我的代码。
- 代码示例
maps.html:
<agm-map [latitude]="lat" [longitude]="lng"
(mapReady)="onMapReady($event)"
>
<agm-marker [latitude]="lat" [longitude]="lng"></agm-marker>
</agm-map>
maps.component.ts
onMapReady(map: any) {
this.map = map;
this.map.setOptions({
mapTypeControl: 'true',
mapTypeControlOptions: {
mapTypeIds: ['roadmap', 'hybrid'],
position: google.maps.ControlPosition.TOP_LEFT,
style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR
},
fullscreenControl: true,
streetViewControl: true
});
}
- Stackblitz
https://stackblitz.com/edit/angular-agm-vvqbao?file=app/app.component.ts
- 参考
您可以在 Stackblitz 中看到,每当地图加载时,我的地图类型控件会在地图的左上方闪烁片刻,然后无缘无故消失。您可能在第一次尝试时不会意识到,您可以在查看地图左上角的同时刷新页面。
【问题讨论】:
-
您是否使用正确的 api 密钥来访问谷歌地图?
-
是的,但我应该启用更多 API 来启用 maptypeId 吗?
-
您必须提供 API 密钥和所需的服务(例如方向服务)。我还建议您使用 googeMaps javascript 库而不是 agm-map
-
我认为你错了,我使用了正确的 API 密钥,并且 JS-Maps 文档显示不需要额外的 API 启用密钥来使用地图选项。