React Router v4中的indexLink

菜鸟在这里。 在React Router v4中有没有新的方法来使用indexLink? 我正在更新一些版本3代码(我想我离开angular度避免所有这些弃用!)

我把它带入一些descructuring:

var {NavLink, IndexLink} = require('react-router-dom'); 

并使用IndexLink保持它始终不醒目:

 <h2>Nav</h2> <IndexLink to="/" activeClassName="active" activeStyle={{fontWeight: 'bold'}}>blah blah blah</IndexLink> //Other navlinks working fine 

IndexLink是打破我的代码的唯一的东西,这是从我改变它的错误。

“警告:React.createElement:type是无效的 – 期望一个string(对于内置组件)或一个类/函数(对于复合组件),但得到:undefined。你可能忘了从你定义的文件中导出你的组件检查Nav的渲染方法“。

一切都被导出,简单的应用程序完美工作,直到我添加IndexLink。 现在传递出去。

<Indexlink>中不存在<IndexRoute> ,因为<IndexRoute><Indexlink>中并不存在索引的整个概念。 请记住,链接和路线直接相关。

所以相反,只需使用<Navlink>

在官方文档上阅读关于Navlink的信息:

Navlink – 一个特殊的版本将添加样式属性的渲染元素,当它匹配当前的url。

如果你需要更多的URL匹配控制,你可以使用strictexact道具。

每个克里斯,正确的答案是继续使用NavLink并使用确切的 。 严格没有在这种情况下工作。

 <NavLink exact to="/" activeClassName="active" activeStyle={{fontWeight: 'bold'}}>chris is awesome</NavLink> 

以防万一遇到这个!