React router redux链接更改路由,但不是组件

时间:2017-03-24 13:27:56

标签: javascript reactjs react-router react-redux

在我的应用程序中,我正在使用

"react": "^15.4.2",
"react-dom": "^15.4.2",
"react-redux": "^5.0.3",
"react-router-dom": "^4.0.0",
"react-router-redux": "^4.0.8",
"redux": "^3.6.0"

在我的代码中我有一个链接(从#34导入{Link}; react-router-dom&#34 ;;)

<Link to="login">Login</Link>

当我点击它时,它正在更改url,同样在redux dev工具中我可以看到路由路径名正在被更改,但登录路径的组件没有变得可见。

您可以查看我的Github存储库

上的代码

2 个答案:

答案 0 :(得分:4)

我找到了解决方案here

问题是在beta react-router版本中你需要将导出的组件包装到withRouter中,如下面的代码所示

export default withRouter(connect(mapStateToProps, mapDispatchToProps)(App));

这是我的github项目中的commit

答案 1 :(得分:0)

<Router>添加条目中:

<Route path="/login" component={Login}>

没有它React不知道应该使用哪个组件。

在Link中登录时应该使用斜杠:

<Link to="/login">Login</Link>