我想在更改路线时添加一个活动类。 我在一个组件(主页(中有一个链接,该链接重定向到另一个组件(详细信息页面(。
<a routerLink="/dashboard/details" (click)="Clicked()"</a>
现在,当我从详细信息页面返回到主页时,我希望有一个链接处于活动状态,告诉用户此链接已被单击。
我尝试使用routerLinkActive,但这似乎不起作用。
.html
<a routerLink="/dashboard/details" routerLinkActive="active-link" (click)="Clicked()"</a>
.css
.active-link {
color:red;
font-weight: bold;
}
谁能帮我解决这个问题?
为什么不在点击事件中添加类名。 试试这个。
<a routerLink="/dashboard/details" [ngClass]="{'active-link':clicked}" routerLinkActive="active-link" (click)="Clicked()"</a>
在 .ts 文件中
clicked: boolean = false;
Clicked() {
this.clicked = true;
}
[routerLinkActiveOptions]="{ exact: true } 你已经把这个放在它的工作旁边
解决方案:
- 可以使用
localStorage
来存储点击的链接的信息。 -
可以使用路由器
queryParams
来存储信息。 使用以下ActivatedRoutes
捕获信息:this.route.queryParamMap.subscribe( params => { this.enableCard = JSON.parse(params.get('enableCard')); })
不是最好的解决方案,而是解决方法。