我正在使用http://angular-google-maps.org/api来使用Google地图。 到目前为止,我能够显示标记,但不知怎的,我无法在点击时显示窗口。
<markers models="markers" coords="'last_known_location'" icon="'icon'" click="'onClicked'">
<windows show="'showWindow'" closeClick="'closeClick'" ng-cloak>
<p ng-non-bindable style="width:200px">{angular{ options.title }angular}</p>
<p ng-non-bindable>{angular{ latitude | number:4 }angular}, {angular{ longitude | number:4 }angular}!</p>
</windows>
</markers>
如您所见,它使用showWindow
属性来显示窗口
我通过
将其添加到每个标记angular.forEach($scope.markers,function(marker){
marker.closeClick = function() {
marker.showWindow = false;
$scope.$apply();
};
marker.onClicked = function(){
alert(marker.id);
onMarkerClicked(marker.id);
};
});
警告会在点击时显示,
var onMarkerClicked = function(marker){
marker.showWindow = true;
$scope.$apply();
}
该属性也已更改,但窗口没有显示。
有什么想法吗?感谢
答案 0 :(得分:1)
您的代码实际上在这里工作正常......
问题在于你将marker.id传递给onMarkerClicked,而不是标记本身......
另外,我不需要$ scope。$ apply()使其工作......
现在我想弄清楚如何访问windows标签内的模型obj ...