Я использую этот плагин
В этом плагине markerInfoWindowTapped Fired on tapping Marker Info Window
.
Этот маркерInfoWindowTapped, который я хочу использовать для навигации по другому компоненту, когда я нажимаю на него.
Итак, в HTML у меня есть этот код:
<GridLayout>
<MapView (mapReady)="onMapReady($event)" (markerInfoWindowTapped)="onMarkerEvent($event)"></MapView>
</GridLayout>
In .ts Iиметь этот код
onMapReady(event) {
console.log('OnMapReady')
this.mapView = event.object;
this.gMap = event.object.gMap;
var UiSettings = this.gMap.getUiSettings();
this.gMap.setMyLocationEnabled(true);
UiSettings.setZoomControlsEnabled(true);
this.itemsS = this.itemService.getItems();
for (let i = 0; i < this.itemsS.length; i++) {
this.myid=this.itemsS[i].id;
console.log('this.myid', this.myid)
console.log('OnMapReady pas for')
var marker = new Marker();
marker.position = Position.positionFromLatLng(this.itemsS[i].latitude, this.itemsS[i].longitude);
marker.title = this.itemsS[i].name;
marker.infoWindowTemplate = '/details/' + this.itemsS[i].id;
this.mapView.addMarker(marker);
}
this.mapView.longitude = this.currentGeoLocation.longitude;
this.mapView.latitude = this.currentGeoLocation.latitude;
this.mapView.zoom = 15;
}
onMarkerEvent(event) {
console.log(event.marker.infoWindowTemplate)
this.router.navigate(event.marker.infoWindowTemplate);
}
Для меня важно переходить в другой компонент, когда я нажимаю на него.Правильный ли мой код?Это не работает и показывает J S: ERROR TypeError: e.reduce is not a function
Можете ли вы предложить какую-либо идею, как перемещаться в другом компоненте, когда я нажимаю на маркер?