为什么使用redux devtools在我的_reduxDevtools对象中未定义ActionCreators属性?

时间:2016-01-12 15:35:14

标签: reactjs npm webpack redux redux-devtools

official repo上的文档之后,当我创建 DevTools 组件时, configureStore 存储并呈现 DevTools 组件在我的工作反应应用程序的主要组件中,我最终得到:
LogMonitor.js中的Uncaught TypeError: Cannot read property 'reset' of undefined:45

第45行对应于:var reset = _reduxDevtools.ActionCreators.reset;

_reduxDevtools看起来像这样:

▼ _reduxDevtools: Object
    __esModule: true
    ► devTools: devTools()
    ► persistState: persistState(sessionId)
    ► __proto__: Object

ActionCreators属性实际上已丢失。

为什么我的ActionCreators对象中的_reduxDevtools属性未定义?

我错过了一些明显的东西吗?当我不使用redux-devtools时,我的应用程序运行良好,因此我非常怀疑它来自我的应用程序代码。

我还rm -rf ed 我的node_modules并重新安装了所有内容。


更新

我尝试使用redux-devtools的{​​{3}}重现此问题,并尝试了解我的项目和此示例的不同之处。

如果我在计数器示例中从 webpack.config.js 中删除the counter example,我会收到同样的错误消息:

'redux-devtools': path.join(__dirname, '..', '..', 'src')
  

this line:用其他模块或路径替换模块。

1 个答案:

答案 0 :(得分:1)

在使用v3.0.0-beta-2中首次引入的新API时,您似乎使用了过时的redux-devtools版本。

您还可以通过查看dock和log monitor插件的对等依赖项来看到这一点,它们需要devTools v3。

我猜你有这个错误,因为当你安装时,稳定版本还没有出来,npm没有选择测试版,留下你的v2。

我将你的reprod中的redux-devtools版本碰到了最后一个,一切都运行良好

此外,示例中的webpack配置的解析参数只需要从存储库的根目录中获取devTool源代码,而无需再次安装它。