在Angular Google Maps中获取标记范围

时间:2016-01-21 22:02:47

标签: javascript angularjs google-maps angular-ui angular-google-maps

我有一个使用Angular UI的Google地图库(http://angular-ui.github.io/angular-google-maps/#!/

构建的地图

我需要访问标记事件处理程序的标记外部的范围。通常,我可以在事件处理程序中访问范围如下:

vm.markerEvents = {
    click: function (marker, eventName, scope) {
        console.log(scope);  // can access the marker scope
    }
};

<ui-gmap-google-map ...>
    <ui-gmap-markers events="vm.markerEvents" ....></ui-gmap-markers>
</ui-gmap-google-map>

我希望能够修改上面显示的事件处理程序的标记(特别是labelClass外部范围内的属性。

我可以使用Markers控制器获取Marker对象,但此方法无法使用范围:

var markers = vm.markersControl.getGMarkers();
console.log(markers);

markers[0].property = 'newValue'; // does not propagate to map
markers[0].scope.property = 'newValue' // what I'm looking for (does not exist)

更改标记对象本身的属性不会传播到地图,这就是我需要在范围内更改它们的原因。

赞赏任何意见。

0 个答案:

没有答案