我想突出显示当前事件的链接
<a [routerLink]="['/route']" />
渲染后我得到一个<a>
带有正确链接的标签,效果很好。
但该指令中还有其他行为,应将router-link-active类添加到 anchor ,以防href与当前位置相同。
问题是这效果不佳。
get isRouteActive(): {
return this._router.isRouteActive(this._navigationInstruction);
}
在_router.IsRouteractive内部有一个当前指令字段,其中应包含当前路由组件。该组件与 __navigationInstruction 进行比较。实际上,如果路由组件相等 - 链接是最新的。
问题是当前指令为空。它被分配在:</p>
Router.prototype.commit = function(...)
处理指令后调用此函数。
所以这永远不会运作良好。
最佳答案
我一直在做这样的事情:
<li [class.active]="somethingThatReturnsTrueOrFalse()"><a [routerLink]="['/About']" class="link">About</a></li>
这对于我的主菜单来说似乎效果很好: http://www.syntaxsuccess.com/angular-2-samples/#/demo/spreadsheet
关于angular - Angular2 beta 中的路由器链接行为被破坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34439711/