routerLinkActive指令的妙用

routerLinkActive指令在路由激活時添加樣式class

採用路由高亮:
當路由被激活時允許你添加一個class在你添加路由的dom元素上,只有url變化時纔會移除此樣式。

父路由鏈接激活

默認情況下,當路由爲鏈接的父路由或者完全匹配鏈接,鏈接都會認爲是激活的狀態。

<a routerLink="/a/b" routerLinkActive="active">B鏈接</a>

示例裏當路由爲“/a”和“/a/b”class active都會被添加。

完全匹配激活

如果限定當前路由需要和鏈接路徑完全匹配才激活,可以在routerLinkActiveOptions屬性添加exact: true。

<a routerLink="/a/b" routerLinkActive="active" [routerLinkActiveOptions]="{exact:true}">B鏈接</a>

調用RouterLinkActive的api

可以把RouterLinkActive實例賦值給一個變量,然後就可以通過變量來調用RouterLinkActive的api:

<li nz-menu-item routerLinkActive #rla="routerLinkActive" [nzSelected]="rla.isActive">
       <a [routerLink]="/a/b" routerLinkActive="active"></a>
</li>

示例中只有路由在激活狀態,當路由爲“/a”和“/a/b”時, active會被添加,相應的標籤被選中並高亮顯示

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章