我在使用router.navigate在Google地圖中的標記的點擊偵聽器時遇到了問題。頁面URL更改爲所需的路徑,但出口不會更改視圖。router.navigate更改url,但視圖不會更改
loadEquipos(locacion: Locacion) {
for (let i = 0; i < this.equipos.length; i++) {
if(this.equipos[i].idLocacion === locacion.id) {
const marker = new google.maps.Marker({
position: new google.maps.LatLng(this.equipos[i].mapData.center.lat, this.equipos[i].mapData.center.lng),
map: map,
label: {
color: 'black',
fontWeight: 'bold',
text: this.equipos[i].nombre,
},
idEquipo: this.equipos[i].id
});
google.maps.event.addListener(marker, 'click',() => {
this.router.navigate(['/tanque', marker.idEquipo]);
});
}
}
}
那女巫中添加事件偵聽器的方法。
RouterModule.forRoot([
{
path: 'admLocaciones',
component: AdmLocacionesComponent
},
{
path: '',
redirectTo: '/inicio',
pathMatch: 'full'
},
{
path: 'inicio',
component: InicioComponent
},
{
path: 'buscarLocacion/:id',
component: BuscarLocacionComponent
},
{
path: 'editarLocacion/:id',
component: EditarLocacionComponent
},
{
path: 'nuevaLocacion',
component: NuevaLocacionComponent
},
{
path: 'admRegiones',
component: AdmRegionesComponent
},
{
path: 'locacion/:id',
component: LocacionComponent
},
{
path: 'tableroTanque',
component: TableroTanqueComponent
},
{
path: 'tanque/:id',
component: TanqueComponent
}
])
],
,而這些都是我的路,任何其他的導航工作完全正常的應用程序中。
感謝您的幫助。
如果您在瀏覽器地址欄中鍵入這些路徑,那麼這些路徑會起作用嗎? – BogdanC
是的,如果我使用導航功能更改路徑後重新加載頁面,它將加載應該顯示的視圖。 –
控制檯中是否顯示任何內容?這個'marker.idEquipo'確實被設置爲一個值嗎?嘗試打開事件追蹤,看看是否能告訴你任何事情。 (您的導航調用的語法看起來是正確的。) – DeborahK