【发布时间】:2020-06-13 08:01:26
【问题描述】:
我一直在尝试将 DrawingManager 与 Maps API 的官方 Angular 组件包装器一起使用,但它没有按预期工作。如果有人可以让它工作,我会很感激能得到一个解决方案。这是我尝试但没有运气的解决方案的 sn-p 和 stackblitz 链接。 (在 stackblitz 中它无法识别 google 命名空间,但如果你在本地机器上下载它就可以了)
this.drawingManager = new google.maps.drawing.DrawingManager({
drawingMode: google.maps.drawing.OverlayType.POLYGON,
drawingControl: true,
drawingControlOptions: {
position: google.maps.ControlPosition.TOP_CENTER,
drawingModes: [google.maps.drawing.OverlayType.POLYGON]
}
});
this.drawingManager.setMap(this.map._googleMap);
https://stackblitz.com/edit/angular-vvwbdg
Github 问题链接: https://github.com/angular/components/issues/18599
编辑 1:
事实证明,问题在于地图未完全加载并且在此之前设置DrawingManager 不会生效。包装模块中没有加载回调。但是 Angular 的 AfterViewInit 似乎做得很好。
【问题讨论】:
标签: angular google-maps google-maps-api-3 angular-material