Javascript 在NgMap中显示和隐藏绘图控件-谷歌地图
我想让用户单击按钮,在地图上显示绘图控件。添加圆、标记等后,绘图控件将再次隐藏 我正在构建一个Angular应用程序,我正在使用NgMap指令() 我的示例代码如下所示: html:Javascript 在NgMap中显示和隐藏绘图控件-谷歌地图,javascript,angularjs,google-maps,ng-map,Javascript,Angularjs,Google Maps,Ng Map,我想让用户单击按钮,在地图上显示绘图控件。添加圆、标记等后,绘图控件将再次隐藏 我正在构建一个Angular应用程序,我正在使用NgMap指令() 我的示例代码如下所示: html: <ng-map id="myMap"> <drawing-manager on-overlaycomplete="ctrl.onMapOverlayCompleted()" drawingControl="ctrl.showDrawCont
<ng-map id="myMap">
<drawing-manager
on-overlaycomplete="ctrl.onMapOverlayCompleted()"
drawingControl="ctrl.showDrawControl">
</drawing-manager>
</ng-map>
vm.showDrawControl = true;
NgMap.getMap({ id: 'myMap' }).then(function (map) {
vm.onMapOverlayCompleted = function (event) {
vm.showDrawControl = false;
alert(vm.showDrawControl);
}
});
在OverlyComplete上调用该函数,但控件未隐藏?检查ng map的源代码时,我发现缺少“观察者到绘图控件”属性,因此在使用角度绑定进行初始设置后无法更新 解决该问题的两个备选方案: 1) 修补ng-map.js,将以下代码添加到: 2) 如前所述,直接使用谷歌地图API 检查我的plunker以获得选项2: 注意:在上面的Plunker中,您还可以看到一个修补版的ng map(但未使用,但测试正常)
attrs.$observe('drawingcontrol', function (newValue) {
drawingManager.setOptions({
drawingControl: (newValue=="true" ? true : false)
});
});
map.mapDrawingManager[0].setOptions({drawingControl:false/true})