1

我正在将 react-hot-loader 添加到我的项目中。我的项目使用 webpack2、babel7、react-hot-loader3 和 webpack-dev-server。启动应用程序时出现“ regeneratorRuntime is not defined ”错误。我使用这个样板作为示例。我没有使用下面的代码,因为我的 configureStore 是外部的,我没有组合减速器的访问权限(商店应用了 redux-saga 中间件)。

if (module.hot) {
        module.hot.accept('../reducer', () =>
            store.replaceReducer(require('../reducer')) // eslint-disable-line global-require
        );
    }

据我所知,regeneratorRuntime 是从 es6 编译生成器的 babel,redux-saga 使用它,这有关系吗?当我无法将商店设为内部并且无法访问减速器时,我该怎么办。

4

1 回答 1

0

你需要使用 babel-plugin-transform-runtime。

$ npm install --save-dev babel-plugin-transform-runtime
$ npm install --save babel-runtime

在 .babelrc 中,添加运行时插件:

{
  "plugins": [
    ["transform-runtime", {
      "polyfill": false,
      "regenerator": true
    }]
  ]
}
于 2017-04-28T12:41:34.520 回答