RouterLink在IE和Firefox中不起做用(路由不跳轉)的問題

問題描述

假設路由已配置好,但運行以下代碼後,點擊 Admin 按鈕卻沒有跳轉至 admin 界面。(clrDropdownItem爲按鈕樣式)html

main.component.htmlbash

<button type="button" clrDropdownItem >
	<a routerLink="/admin"> Admin </a>
</button>
複製代碼

解決方法

方法一

將 clrDropdownItem 樣式放在<a>標籤,不使用<button>標籤ide

<a clrDropdownItem routerLink="/admin"> Admin </a>
複製代碼

咦,樣式不生效怎麼辦?看方法二吧。ui

方法二

使用<button>標籤和Router.navigate方法this

main.component.htmlspa

<button type="button" clrDropdownItem (click)="gotoAdmin()">
    Admin
</button>
複製代碼

main.component.tsfirefox

import { Router } from '@angular/router';
...
export class MainComponent  {
    constructor(
        private router: Router
    ) {}
    
    gotoAdmin() {
        this.router.navigate(['/admin']);
    }
}

複製代碼

參考連接

Angular5在IE和Firefox中沒有使用Routerlink和按鈕的響應code

Angular官方文檔:路由與導航component

相關文章
相關標籤/搜索