我在我的视图中有一个谷歌地图,在这张地图中我有很多标记,每个标记应该有一个内容,其中包含一个href以获取更多详细信息
这是我添加一个标记的代码,该标记用于循环中保存在数据库中的所有事件:
setMarker(event){
let coords = event.location.split(",");
let location = new google.maps.LatLng(coords[0],coords[1]);
let marker = new google.maps.Marker({
map: this.map,
position: location
});
let content = "<h1>" + event.name + "</h1></br><a ng-click="+this.viewEventDetails(event)+"> More Details</a>";
let infoWindow = new google.maps.InfoWindow({
content: content
});
google.maps.event.addListener(marker, 'click', () => {
infoWindow.open(this.map, marker);
});
return marker;
}
这是我的viewEventDetails函数:
viewEventDetails(event){
this.navCtrl.push(EventDetailsPage, event);
}
当我加载地图视图时,它会在所有事件上加载viewEventDetails,我该怎么办?
答案 0 :(得分:1)
您可以将"</h1></br><a ng-click="+this.viewEventDetails(event)+"> More Details</a>"
更改为"</h1></br><a ng-click=\"viewEventDetails(event)\"> More Details</a>"
吗?我认为这应该有用。
顺便说一下,我认为ng-click
也应该是(click)
的替代,因为离子2采用angular2方式,因此不接受ng-click。