注意: _这里有很多不同的答案,大多数答案一次或一次都有效。 事实是,当Angular团队更改其Router时,有效的方法已经改变了许多次。最终将
成为 Angular路由器的Router
在Angular应用程序中(我撰写本文时为2.0.0-beta.0版本中的当前版本),如何确定当前活动的路由是什么?
我正在开发一个使用Bootstrap 4的应用程序,并且需要一种在<router- output>
标签中显示其关联组件时将导航链接/按钮标记为活动状态的方法。
我意识到当单击其中一个按钮时,我可以自己维护状态,但是这不会涵盖将多条路径放入同一条路线的情况(例如主导航菜单以及主组件中的本地菜单) )。
任何建议或链接将不胜感激。谢谢。
使用新的Angular路由器,您可以[routerLinkActive]="['your-class-name']"
向所有链接添加属性:
<a [routerLink]="['/home']" [routerLinkActive]="['is-active']">Home</a>
或者,如果只需要一个类,则为简化的非数组格式:
<a [routerLink]="['/home']" [routerLinkActive]="'is-active'">Home</a>
如果只需要一个类,甚至可以使用一种更简单的格式:
<a [routerLink]="['/home']" routerLinkActive="is-active">Home</a>
注意:这里有很多不同的答案,而且大多数在某个时候都是有效的。事实上,当Angular团队改变其路由器时,工作的方式已经改变了很多次。Router3.0版本将最终成为Angular中的路由器,它打破了许多这些解决方案,但提供了一个非常简单的解决方案。从RC.3开始,首选解决方案是使用,如本答案所示。 在Angular应用程序中(我写这篇文章的时候是2.0.0-Beta.0版本中的最新版本),如何确定
我读过关于如何确定活动路由的问题,但我仍然不清楚如何用参数确定活动路由? 现在我是这样做的: 在我的组件中: 这将起作用,因为我将用户名作为字符串传递。有没有办法通过传递正确的参数来做到这一点??
如何确定哪个文本框是TabControl中的活动控件?
假设我当前所在的页面的URL为user/:id。现在,我从这一页导航到下一页:id/posts。 现在有一种方法,可以检查前面的URL是什么,即,。 下面是我的路线
当我阅读代码时,我有点困惑,我无法理解由创建的两个不同的之间的关系。 请指导我如何创建图表,并定义2个活动之间的关系类型。我所理解的是,它不是关联、聚合、组合或依赖,那么它是什么..请指导我。
所以我有2个路由“/管理员路由”和“/超级用户路由”,并且都需要“管理员”和“超级用户”权限才能访问这些路由。 当用户单击此路由时,我检查权限,如果该用户的权限为false,则激活“/无访问”路由保护。 挑战在于,我的应用程序中有面包屑,如果用户处于禁止访问状态,我希望在面包屑中显示他之前访问过的路线。 因此,如果用户尝试访问“/admin-Route”并且他没有管理员权限,则禁止访问路由保护会启