【发布时间】:2016-01-16 00:02:36
【问题描述】:
使用 React Router 2.0.0rc1-5 我在导入后将 browserHistory 设为未定义:
import { browserHistory } from 'react-router'
该软件包似乎安装正确,但无论版本如何,无论是在服务器还是客户端,我都得到了相同的结果。
也许这是一个已知的错误?
【问题讨论】:
-
使用较新版本的
react-router,您可以从history包中获得历史创建器。看看the docs。 -
从master分支来看,我相信他们现在实际上是在将browserHistory打包到react-router中
-
使用 2.0 rcs,我在服务器上得到未定义...在浏览器中我得到
connect.js?243b:60 Uncaught TypeError: finalMapStateToProps is not a function(这似乎是 Redux 问题)。我认为这与 React Router 的渲染有关,因为除非我从renderToString中删除路由器,否则我会在服务器上收到相同的错误 -
明白了。如果我是reading the code correctly,它实际上应该在服务器上返回
undefined。您不会使用服务器上的历史记录,而是选择matchandRoutingContext。并且浏览器错误听起来像是 Redux 配置问题,可能在您的代码中 - 随意在上面添加它,我们可以看看。 -
看起来好像实际上是 Redux 语法问题。正如你所说,一旦我不在服务器上使用
browserHistory,我就避免了未定义的问题。我的 redux 错误与我在容器中使用connect()有关。感谢您的帮助!
标签: reactjs react-router redux