单击 angular-google-maps 中的标记时,我正在尽力显示一个窗口。几乎这里做了什么http://angular-google-maps.org/demo。
这是生成标记的函数——它是从一个休息服务中调用的,每个标记对象都可以在坐标.json中查看:
var generateMarkers = function(markers) {
angular.forEach(markers, function(marker) {
marker.onClick = function() {
console.log('on click - opening window');
marker.showWindow = true;
$scope.$apply();
}
marker.closeClick = function() {
console.log('close click - hiding window');
marker.showWindow = false;
$scope.$apply();
}
});
$scope.map.randomMarkers = markers;
};
这是声明标记的代码(没有控制器嵌套和一个 $scope )。窗口将继承
<google-map center="map.center" zoom="map.zoom" draggable="true"
bounds="map.bounds" control="map.control">
<markers models="map.randomMarkers" coords="'self'"
icon="'icon'"
click="'onClick'">
<windows
show="'showWindow'"
coords="'self'"
closeClick="'closeClick'" ng-cloak="">
<div>
Window with additional information
</div>
</windows>
</markers>
</google-map>
这要么是 angular-google-maps 中的错误,要么是我做错了什么(很可能)
我创建了一个 plunkr,它演示了行为 --> http://plnkr.co/edit/z1TdYlYbhSYWZb7n3L4M?p=preview
请告诉我你的想法。