我有一个具有这种简单导航的反应路由器应用程序:
React.DOM.ul(
{className: 'navigation'},
React.DOM.li(
{},
React.createElement(
Link,
{to: '/', activeClassName: 'active'},
React.DOM.i({className: 'fa fa-tachometer'}),
'Dashboard'
)
),
React.DOM.li(
{},
React.createElement(
Link,
{to: '/help', activeClassName: 'active'},
React.DOM.i({className: 'fa fa-life-ring'}),
'Help'
)
)
)
当我加载/
时,仪表板链接处于活动状态,正如人们所期望的那样。单击“帮助”会加载/help
并激活“帮助”链接,但同时也会激活“仪表板”链接。
我可以告诉/help
仍然将/
与Link
匹配,假设我希望活动显示在路线的整个层次结构上。是否可以禁用此行为?
我的路由器:
React.createElement(Route, {
path: '/',
component: Layout
},
React.createElement(IndexRoute, {component: Dashboard}),
React.createElement(Route, {path: '/help', component: Help})
)
答案 0 :(得分:0)
如果您将onlyActiveOnIndex
的属性Link
设置为true
,则只有当前路径与链接路径完全匹配时,它才会处于活动状态。
对我来说,这可以通过在仪表板链接上设置它来解决问题,例如
React.createElement(
Link,
{to: '/', activeClassName: 'active', onlyActiveOnIndex: true},
React.DOM.i({className: 'fa fa-tachometer'}),
'Dashboard'
)