javascript - Angular 2 路由 : Referencing Variable in Router. url

标签 javascript angular angular2-routing angular2-template

我使用以下模板语句来确定选项卡元素的类:

<li [class.active]="router.url == '/member-view/member-profile/' + routeParamVar">

无论路由参数是什么,类都应该是事件的。但理想情况下,我可以将特定的路由参数放入 Router.url 语句中。这是这个问题的第一部分,看起来很简单,但我不确定该怎么做。

我认为,一个复杂的问题是该元素位于具有实际路由参数的 View 的父模板中。似乎我无法像这样将 ActivatedRoute 参数分配给组件中的变量:

this.uid = this.activeRoute.snapshot.params['uid']

我一直在使用服务或@ViewChild 将 uid 从子项获取到父项,但还没有完全弄明白。所以总而言之,我的问题是双重的:

首先,如何将子组件的路由参数赋值给父组件中的变量?

其次,如何将该变量放入模板语句中的 Router.url 中?

最佳答案

所以在 Router.url 中引用变量的方式就像我在问题中猜测的那样:

[class.active]="router.url === '/member-view/member-profile/' + uid"

我还能够通过以下方式获取 child 的路由参数:

this.activeRoute.firstChild.params
.subscribe(params => {
    this.uid = params['uid'];

关于javascript - Angular 2 路由 : Referencing Variable in Router. url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42407305/

相关文章:

angular - 实现忘记密码功能

angular - 如何升级 Angular 2 中的路由器版本?

angular - 如何在angular2中创建动态路线?

javascript - 修改json对象并保存

javascript - 在多边形中找到凸 Angular 和凹 Angular

IdentityServer 的基于 Angular 的登录页面

angular - 如何使用 Angular Material 预建主题中的主题颜色

angular - 组件路由器不适用于 ng-bootstrap

javascript - 实时统计脚本

javascript - 如何在 Javascript 中基于另一个数组获取多个数组值