angular2中讓路由鏈接保持激活狀態(tài)

ng2中,可以通過

template: `
  <h1>Angular Router</h1>
  <nav>
    <a routerLink="/crisis-center" routerLinkActive="active">Crisis Center</a>
    <a routerLink="/heroes" routerLinkActive="active">Heroes</a>
  </nav>
  <router-outlet></router-outlet>
`

給激活的路由綁定動態(tài)class,通過設置class樣式即可設置激活的路有鏈接的樣式。
但是當頁面跳到其他路由(上面兩個以為的其他路由),兩個路由鏈接都不處于激活狀態(tài),失去class樣式。

不過可以通過RouterLinkActive特性讓路由鏈接保持激活狀態(tài)
RouterLinkActive指令會基于當前的RouterState對象來為激活的RouterLink切換CSS類。 這會一直沿著路由樹往下進行級聯(lián)處理,所以父路由鏈接和子路由鏈接可能會同時激活。 要改變這種行為,可以把[routerLinkActiveOptions]綁定到{exact: true}表達式。 如果使用了{ exact: true },那么只有在其URL與當前URL精確匹配時才會激活指定的RouterLink。
所以只要通過設置父子路由即可。

符:路有鏈接傳參方式:

<nav class="app_nav">
        <div *ngFor="let item of currentUser?.frontSet;let last = last;" [isLast]="last" (lastDone)="initVav()">
            <a [routerLink]="item.code" [queryParams]="{userName : currentUser.name}" routerLinkActive='active'>
                  {{item.moduleName}}
            </a>
        </div>
    </nav>

下一篇講到的動態(tài)路由替代方案也會用到這段代碼

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,540評論 19 139
  • 22年12月更新:個人網(wǎng)站關停,如果仍舊對舊教程有興趣參考 Github 的markdown內(nèi)容[https://...
    tangyefei閱讀 35,393評論 22 257
  • 版本:4.0.0+2 有一些英雄指南應用的新需求: 添加一個儀表盤 視圖。 添加在英雄 視圖和 儀表盤 視圖之間導...
    soojade閱讀 1,444評論 0 0
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,940評論 25 709
  • 我睜開眼的時候,蛐蛐在叫,花在打呼,草在伸懶腰,月亮瞇著眼在笑。我不喜歡晚上,那么美的一切,都在晚上睡著了,我也不...
    一盒車厘子閱讀 356評論 0 3

友情鏈接更多精彩內(nèi)容