Sto cercando di capire come utilizzare il router di navigazione Angular2 (router 3.0.0-alpha.7) con i parametri di query.Cancella tutte le queryParam con il nuovo router v3 Angular2
posso facilmente passare a un percorso con un queryParam con questa linea:
this._router.navigate(['/login'], {queryParams: {redirect: 'route1'}});
Nel 'il login /' componente, faccio un po 'di login che reindirizza al percorso redirect
, vale a dire Route1 qui. Tuttavia, dopo il reindirizzamento, i parametri di query redirect
rimangono nell'URL, ad esempio, ora sono alla pagina /route1?redirect=route1
. Voglio rimuovere il parametro di reindirizzamento qui.
Inoltre, se si passa a un'altra pagina con lo stesso redirect
queryParam, non sovrascrive il precedente, ma aggiunge un altro ?redirect=...
nell'URL. Vale a dire:
this._router.navigate(['/another-route'], {queryParams: {redirect:'route2'}});
mi porta a /another-route?redirect=route2?redirect=route1
E 'possibile cancellare i queryParams durante la navigazione tra i percorsi? Ho provato this._router.navigate(['/route1'], {queryParams: {redirect: null}});
o {queryParams: null}
ecc. Ma nessun successo.
Come posso ottenere lo stesso con routerLinks? ' Applications' genera un errore di analisi. Doc manca questo. – leovrf
Aggiungo questo alla risposta – yarons
... quindi la soluzione è di aggiungere parametri di query vuoti * ovunque * viene utilizzato un collegamento? Questo è ..... terrificante ... – dudewad