gpt4 book ai didi

具有多条路线的Angular 2 routerlink?

转载 作者:太空狗 更新时间:2023-10-29 18:25:30 25 4
gpt4 key购买 nike

我只想在一条路线上删除一个类(class),(或者在所有但只有一条路线上添加一个类(class)。)这怎么可能?我已经尝试使用多个参数的 [routerLink] 无济于事:

 <div class='body-content' [routerLink]="['/fetch-data', '/counter']" [routerLinkActive]="['col-sm-9']"  > 
<router-outlet></router-outlet>
</div>

或者,是否有 [routerLinkNOTActive] 之类的东西或类似的东西:

<div class='body-content' [routerLink]="['/home']" [routerLinkNotActive]="['col-sm-9']"> 

因此,它会在所有不是“/home”的路由上添加“col-sm-9”类。看起来很简单,但找不到任何东西来做。

最佳答案

我不知道是否有内置指令来做你想做的事,但你总是可以向你的组件添加一些逻辑。

在您的模板中

<div class='body-content' [routerLink]="['/fetch-data', '/counter']" [class]="bodyContentClass()"> 

在你的组件中

bodyContentClass() {
// router is an instance of Router, injected in the constructor
return this.router.isActive('/url-to-make-body-active') || this.router.isActive('/other-url-to-make-body-active') ? 'col-sm-9' : '';
}

您可以玩得开心,并根据您希望的任何路线组合进行测试。

关于具有多条路线的Angular 2 routerlink?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43147756/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com