Estoy siguiendo el tutorial oficial de Angular 2 y usa la función de navegación de una manera muy similar al routerLink. ¿Cuál es la diferencia entre ellos? ¿Cuál usar cuándo?
this.router.navigate(['/detail', this.selectedHero.id]); [routerLink]="['/detail', hero.id]"[routerLink] es una directiva angular que puede usar en html para los elementos <a> o <button> . La directiva escuchará los eventos de clic y navegará a la ruta creada con los params proporcionados a routerLink .
this.router.navigate(['/detail', this.selectedHero.id]); se utiliza en su componente o servicio para navegar.
La directiva routerLink y this.router.navigate deben navegar exactamente a la misma URL si se especifican los mismos argumentos.
routerLink es una directiva que detrás de escena también usa router.navigate() .
El valor de routerLink y el argumento de función en navigate es exactamente el mismo.