0

我正在尝试在我的 ionic 2 项目中实现原生谷歌地图,但设置可点击标记时出现错误。这是我绘制标记的代码:

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);
                        }
                    );
                });
            }

它出现在地图上,但我的问题是

this.navToCenter(centerMarker.ID);

总是去最后一个标记。

我正在使用 ionic-native 的 GoogleMap 类来创建地图,如下面的文档所示: https ://ionicframework.com/docs/v2/native/google-maps/ 我也知道这个问题是因为像上面的描述这样的承诺插件文档 https://github.com/mapsplugin/cordova-plugin-googlemaps/wiki/Marker#create-multiple-markers

我需要任何方法来使用 ionic2 GoogleMap 类和 Typescript 来处理这个解决方案。问候。

4

0 回答 0