This time I will bring you a detailed explanation of the use of Router in Angular 5.x. What are the precautions when using Router in Angular 5.x. The following is a practical case, let's take a look.
Preface:
Jumping between Angular APP views depends on Router (routing). In this chapter, we will talk about the application of Router
The running results are as follows. Three navigation bars are set up, Home, About, and Dashboard. Click on different navigation bars to jump to the corresponding page:
Create 3 components
ng g c home
ng g c about
Routing and configuration
(1)**Introduce Angular Router **When using Angular Router, you need to introduce RouterModule, as follows:
// app.module.ts import { RouterModule } from '@angular/router'; imports: [ BrowserModule, RouterModule ],
import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { RouterModule } from '@angular/router'; import { appRoutes } from './routerConfig'; import { AppComponent } from './app.component'; import { AboutComponent } from './components/about/about.component'; import { HomeComponent } from './components/home/home.component'; import { DashboardComponent } from './components/dashboard/dashboard.component';
Create the Router Configure file
In the app directory, create the routerConfig.ts file. The code is as follows:import { Routes } from '@angular/router'; import { HomeComponent } from './components/home/home.component'; import { AboutComponent } from './components/about/about.component'; import { DashboardComponent } from './components/dashboard/dashboard.component'; export const appRoutes: Routes = [ { path: 'home', component: HomeComponent }, { path: 'about', component: AboutComponent }, { path: 'dashboard', component: DashboardComponent } ];
JavaScript, so the suffix of the file is: ts instead of js
How to call this routerConfigue file? It needs to be loaded into app.module.ts because app.moudle.ts is the entrance to the entire Angular App.// app.module.ts import { appRoutes } from './routerConfig'; imports: [ BrowserModule, RouterModule.forRoot(appRoutes) ],
Declare Router Outlet
In the app.component.html file, add the code:<p style="text-align:center"> <h1> {{title}}!! </h1> <nav> <a routerLink="home" routerLinkActive="active">Home</a> <a routerLink="about">About</a> <a routerLink="dashboard">Dashboard</a> </nav> <router-outlet></router-outlet> </p>
Run
Enter the path where the project is located and run;ng serve --open
Regarding Router, change the way of writing:
In the app.moudle.ts file, the code is as follows:imports: [ BrowserModule, RouterModule.forRoot( [ { path: 'home', component: HomeComponent }, { path: 'about', component: AboutComponent }, { path: 'dashboard', component: DashboardComponent } ] ) ],
Summary
Since the introduction of component-oriented (component), routing management is much more convenient thanAngularJS (1.X).
Further optimization:Perhaps you have noticed that when accessing http://localhost:4200, its path should be "/", and we should set this default path.{ path: '', redirectTo:'/home', pathMatch: 'full' },
Use JS to operate the input text box content
Detailed explanation of the use of React Router v4
The above is the detailed content of Detailed explanation of using Router in Angular 5.x. For more information, please follow other related articles on the PHP Chinese website!