En el post anterior realizamos agregamos la primer ruta en nuesta aplicación Angular.
Aprovechando que ya contamos con el array de definiciones de rutas de nuestra aplicación dentro de app.module.ts vamos a crear una ruta nueva y navegar utilizando routerLink.
Nuevo componente
Vamos a comenzar creando un nuevo componente con el siguiente comando del CLI:
ng generate component posts
Luego, agregar una nueva ruta sólo consistiría en sumar el nuevo componente a la colección de rutas:
const routes: Route[] = [
  { path: "home", component: HomeComponent },
  { path: "posts", component: PostsComponent },
  { path: "**", redirectTo: "home" }
];
Y, por último, añadimos la posibilidad de navegar entre las rutas de nuestra aplicación en app.component.html:
<!-- app.component.html -->
<nav>
  <a href="/home">Inicio</a> |
  <a href="/posts">Posts</a>
</nav>
<router-outlet></router-outlet>
Excelente!! Al ejecutar el comando ng serve ya podremos navegar por nuestra aplicación. 
Pero puede que estemos frente a un pequeño problema. Al navegar a la nueva ruta se produce un refresh de la página y esto puede llegar a ser algo no deseado si pensamos crear una SPA porque estamos perdiendo el estado de la aplicación ante cada click en los links.
  
  
  Incorporar routerLink
Para solucionar este inconveniente vamos a utilizar la directiva routerLink para cambiar de página evitando hacer un refresh.
Simplemente lo que debemos hacer es reemplazar nuestros href por routerLink:
<!-- app.component.html -->
<nav>
  <a routerLink="/home">Inicio</a> |
  <a routerLink="/posts">Posts</a>
</nav>
Y ahora cuando hacemos click entre las rutas de nuestra aplicación ya no se reliza el refresh de la página!!
Aquí se puede ver el código final:
              
    
Top comments (0)