首頁 > web前端 > js教程 > 主體

詳解Angular中的路由及其用法

青灯夜游
發布: 2021-03-03 10:01:48
轉載
1815 人瀏覽過

本篇文章帶大家來了解Angular中的路由,以及Angular路由的使用。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。

詳解Angular中的路由及其用法

相關推薦:《angular教學

一、

1、指令建立專案

ng new ng-demo --skip-install

詳解Angular中的路由及其用法

2、建立需要的元件

ng g component components/home
ng g component components/news
ng g component components/newscontent
登入後複製
3、找到app-routing.module.ts 設定路由


引入元件

import { HomeComponent } from './components/home/home.component';
import { NewsComponent } from './components/news/news.component';
import { ProductComponent } from './components/product/product.component';
登入後複製
設定路由

const routes: Routes = [
{path: 'home', component: HomeComponent},
{path: 'news', component: NewsComponent},
{path:'product', component:ProductComponent },
{path: '*', redirectTo: '/home', pathMatch: 'full' }
];
登入後複製
4、找到app.component .html 根元件模板,設定router-outlet 顯示動態載入的路由

<h1>
    <a>首页</a>
    <a>新闻</a>
</h1>
<router-outlet></router-outlet>
登入後複製

#二、Angular routerLink 跳轉頁面預設路由
<a>首页</a>
<a>新闻</a>
登入後複製
//匹配不到路由的时候加载的组件 或者跳转的路由
{
    path: '**', /*任意的路由*/
    // component:HomeComponent
    redirectTo:'home'
}
登入後複製

三、Angular routerLinkActive 設定routerLink 預設選取路由
<h1>
  <a>
    首页
  </a>
  <a>
    新闻
  </a>
</h1>
登入後複製
<h1>
    <a>首页</a>
    <a>新闻</a>
</h1>
登入後複製

#四、動態路由

4.1.問號傳參

#跳轉方式,頁面跳到或js跳到

問號傳參的url位址顯示為…/list-item?id=1

queryParams屬性是固定的

{
{ item.name }}

#//js跳轉

//router為ActivatedRoute的實例

import { Router } from '@angular/router';
.
constructor(private router: Router) {}
.
this.router.navigate(['/newscontent'],{
  queryParams:{
    name:'laney',
    id:id
  },
  skipLocationChange: true 
  //可以不写,默认为false,设为true时路由跳转浏览器中的url会保持不变,传入的参数依然有效
});
登入後複製
取得參數方式

import { ActivatedRoute } from '@angular/router';

constructor(public route:ActivatedRoute) { }
ngOnInit() { 
    this.route.queryParams.subscribe((data)=>{
      console.log(data);
 })
}
登入後複製

4.2 路徑傳參

#路徑傳參的url位址顯示為…/list-item/1

<a [routerLink]="[’/list-item’, item.id]"> {{ item.name }}
//js跳转 //router为ActivatedRoute的实例
this.router.navigate([’/list-item’, item.id]);
登入後複製

路徑配置:


{path: ‘list-item/:id’, component: ListItemComponent}
登入後複製

取得參數方式

this.route.params.subscribe(
  param => {
      this.id= param[&#39;id&#39;];
  }
)
登入後複製

五、父子路由

1、建立元件引入元件

import { WelcomeComponent } from ‘./components/home/welcome/welcome.component’;
 import { SettingComponent } from ‘./components/home/setting/setting.component’;
登入後複製

2、設定路由

{
    path:&#39;home&#39;,
    component:HomeComponent,
    children:[{
      path:&#39;welcome&#39;,
      component:WelcomeComponent
    },{
      path:&#39;setting&#39;,
      component:SettingComponent
    },
    {path: &#39;**&#39;, redirectTo: &#39;welcome&#39;}
  ]
},
登入後複製

3、父元件中定義router-outlet

更多程式相關知識,請造訪:

程式設計影片! !

以上是詳解Angular中的路由及其用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:csdn.net
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板