首页 > 解决方案 > Angular 6: Google Maps, AGM-MAP - 使用 google.maps.Map 的单个实例

问题描述

我有一个包含 C2 组件列表的 C1 组件。C2 有一个 agm-map。通过单击 C1 中的按钮,将创建一个 C2,显示地图(在 agm-map 中以及从 C1 传递的数据)。

每个 C2 都会创建一个新地图,这对 Google 地图来说是有成本的。C1 是否能够创建一次地图并将其传递给每个组件 C2,以便我们拥有一个新地图?为了最大限度地降低成本,使用 agm-map 的最佳做法是什么?

C2 .html

<agm-map [fitBounds]="latlngBounds" (mapReady)="onMapReady($event)"
  [fullscreenControl]='true' [mapTypeControl]='true'>
  <agm-data-layer *ngFor="let m of geoJson; " [geoJson]="m.geoJson" [style]="m.style"></agm-data-layer>

C2.ts

onMapReady(map: any) {
  // I need the map object here to be a singleton 
};

标签: angulartypescriptgoogle-mapsagm-map

解决方案


推荐阅读