對(duì)angular4子路由&輔助路由詳解
子路由學(xué)習(xí)筆記:
子路由和路由一樣的配置方法,都是聲明好路由的入口,路由的路徑,路由的出口,不一樣的是自路由是嵌套在副路由里面的并且由children表明這是子路由且可以無(wú)限循環(huán)嵌套。
路由入口:需要注意的是在子路由的入口處不能再用/來(lái)跟路徑名,/會(huì)告訴angular去找跟組件,就會(huì)找到跟組件對(duì)應(yīng)的模塊,子路由需要用./
1.設(shè)置根路由入口:在模板(html)上設(shè)置,路由入口就是點(diǎn)擊哪里開(kāi)始路由到新組件(點(diǎn)擊首頁(yè)到首頁(yè)去)
<a [routerLink]="['/']">主頁(yè)</a>
<a [routerLink]="['/product']" [queryParams]="{id:1}">商品詳情</a>
<a [routerLink]="['/home',2]">主頁(yè)</a>
子路由入口:(子路由是./)字路由是路由里面套的路由可以無(wú)限嵌套。
<a [routerLink]="['./']">商品描述</a> <a [routerLink]="['./seller',99]">商品描述</a>
路由出口(路由出口是指新的組件將在哪里顯示。入口指定什么時(shí)候加載新組件,出口指加載完的組件顯示在哪里):路由的出口和入口均在模板里面設(shè)置
<router-outlet></router-outlet>
路由路徑:當(dāng)路由的出口入口都設(shè)置好了的時(shí)候就來(lái)配置路由的路徑。路徑指定了當(dāng)訪(fǎng)問(wèn)哪條路徑的時(shí)候加載哪個(gè)模板
const routes:Routes=[
{path:'',redirectTo:'/home',pathMatch:'full'},
{path:'product',component:ProductComponent,children:[
{path:'',component:ProductdescComponent} ,
{path:'seller/:id',component:SellerComponent}
]},
{path:'home/:id',component:HomeComponent},//整個(gè)路徑被劃分成兩段變量,一段是路徑,一段時(shí)參數(shù)
{path:'**',component:Code404Component}//通配符,當(dāng)路徑找不到的時(shí)候訪(fǎng)問(wèn)
];
輔助路由:
分三步:
1.在主路由的插座也就是出口處定義一個(gè)輔助路由插座:也就是定義個(gè)輔助路由的出口:輔助路由的出口定義和主路由一樣,只是輔助路由比主路由多了一個(gè)name屬性:用來(lái)指定輔助路由顯示那幾個(gè)組件
這里指輔助路由顯示outlet叫做aux對(duì)應(yīng)的組件
<router-outlet></router-outlet> <router-outlet name="aux"></router-outlet>
2.配置輔助路由路徑:必須加一個(gè)outlet屬性,指定該路由顯示在名字叫什么的輔助路由出口(插座)上;
這里指當(dāng)訪(fǎng)問(wèn)chat時(shí)加載XchatComponnet顯示在名字叫aux的這個(gè)輔助路由出處。
{path:'chat',component:XhatComponent,outlet:'aux'},
3.配置入口參數(shù):輔助路由的參數(shù)將是一個(gè)對(duì)象,這個(gè)對(duì)象里面有一個(gè)屬性outlets,這個(gè)屬性的值也是一個(gè)對(duì)象,該對(duì)象里面?zhèn)饕粋€(gè)name屬性指定要顯示的輔助路由的名字,值是該輔助路由需要顯示的組件路徑;比如下面:名字叫aux的輔助路由將顯示路徑為chat的組件
需要注意的是當(dāng)不希望輔助路由顯示的時(shí)候可以吧name設(shè)置為null。
這里指點(diǎn)擊開(kāi)始聊天的時(shí)候加載路徑為chat對(duì)應(yīng)的組件,顯示在名字叫做aux的輔助路由出口上。
<a [routerLink]="[{outlets:{aux:'chat'}}]">開(kāi)始聊天</a>
<a [routerLink]="[{outlets:{aux:null}}]">結(jié)束聊天</a>
當(dāng)希望跳轉(zhuǎn)輔助路由的同時(shí)主路由跳轉(zhuǎn)到指定的組件的時(shí)候:可以在入口文件加一個(gè)屬性:primary,屬性的值是需要跳轉(zhuǎn)的主組件的路由路徑例如下面點(diǎn)擊聊天的同時(shí)不管目前在哪個(gè)組件下主路由都會(huì)跳轉(zhuǎn)回home路徑下的組件
<a [routerLink]="[{outlets:{primary:home, aux:'chat'}}]">開(kāi)始聊天</a>
以上這篇對(duì)angular4子路由&輔助路由詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Angular中使用ui router實(shí)現(xiàn)系統(tǒng)權(quán)限控制及開(kāi)發(fā)遇到問(wèn)題
這篇文章主要介紹了Angular中使用ui router實(shí)現(xiàn)系統(tǒng)權(quán)限控制及開(kāi)發(fā)遇到問(wèn)題的相關(guān)資料,本文分步驟介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-09-09
angular 未登錄狀態(tài)攔截路由跳轉(zhuǎn)的方法
今天小編就為大家分享一篇angular 未登錄狀態(tài)攔截路由跳轉(zhuǎn)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-10-10
AngularJS使用自定義指令替代ng-repeat的方法
這篇文章主要介紹了另一種即具有與ng-repeat一樣處理大量數(shù)據(jù)的綁定的功能,又具有超高性能的自定義方法,有需要的小伙伴們可以參考借鑒,下面來(lái)一起看看吧。2016-09-09
AngularJs 利用百度地圖API 定位當(dāng)前位置 獲取地址信息
本文主要介紹了AngularJs 利用百度地圖API 定位當(dāng)前位置 獲取地址信息的方法步驟。具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-01-01
AngularJS的ng Http Request與response格式轉(zhuǎn)換方法
這篇文章主要介紹了AngularJS的ng Http Request與response格式轉(zhuǎn)換方法,結(jié)合實(shí)例形式分析了AngularJS實(shí)現(xiàn)Request與response格式轉(zhuǎn)換操作的相關(guān)設(shè)置與使用技巧,需要的朋友可以參考下2016-11-11
Angular使用過(guò)濾器uppercase/lowercase實(shí)現(xiàn)字母大小寫(xiě)轉(zhuǎn)換功能示例
這篇文章主要介紹了Angular使用過(guò)濾器uppercase/lowercase實(shí)現(xiàn)字母大小寫(xiě)轉(zhuǎn)換功能,涉及AngularJS過(guò)濾器針對(duì)字符串轉(zhuǎn)換的簡(jiǎn)單使用技巧,需要的朋友可以參考下2018-03-03
Angular依賴(lài)注入系統(tǒng)里Injection token PLATFORM_ID使用場(chǎng)景詳解
這篇文章主要為大家介紹了Angular依賴(lài)注入系統(tǒng)里Injection token PLATFORM_ID使用場(chǎng)景詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11
AngularJs Understanding the Controller Component
本文主要介紹AngularJs Understanding the Controller Component的內(nèi)容,這里整理了相關(guān)資料,及簡(jiǎn)單示例代碼,有興趣的小伙伴可以參考下2016-09-09
詳解JavaScript的AngularJS框架中的表達(dá)式與指令
這篇文章主要介紹了JavaScript的AngularJS框架中的表達(dá)式與指令,文中羅列了幾個(gè)常用的指令屬性加以說(shuō)明,需要的朋友可以參考下2016-03-03

