我正在尝试在我的离子2项目中实现原生谷歌 Map ,但是我设置错误来设置可点击的标记 . 这是我绘制标记的代码:
for (var i = 0; i < mapMarkers.length; i++) {
var centerMarker = mapMarkers[i];
let location = new GoogleMapsLatLng(centerMarker.lat, centerMarker.long);
let MarkerDetails = centerMarker.name ;
let markerOptions = {
position: location, title: MarkerDetails ,snippet:centerMarker.distance , icon:this._MapService.markerImg
};
this.map.addMarker(markerOptions)
.then( (marker: GoogleMapsMarker) => {
console.log('centerMarker.ID'+centerMarker.ID)
marker.addEventListener(GoogleMapsEvent.INFO_CLICK).subscribe(
()=>{
this.navToCenter(centerMarker.ID);
}
);
});
}
它出现在 Map 上,但我的问题是
this.navToCenter(centerMarker.ID);
总是去最后一个标记 .
我正在使用离子原生的GoogleMap类来创建 Map ,就像这里的文档一样:https://ionicframework.com/docs/v2/native/google-maps/我也知道这个问题是因为承诺就像插件文档中的说明https://github.com/mapsplugin/cordova-plugin-googlemaps/wiki/Marker#create-multiple-markers
我需要使用ionic2 GoogleMap类和Typescript来处理这个解决方案 . 问候 .