0

Webpack 编译成功,但无法在浏览器中加载。在检查 Web 控制台时,我发现在 _webpack_require_ 中无法访问某些模块。当我在相关模块中将 es6import语法更改为时require,Web 控制台中抛出的错误消失了。我不打算进入每个文件并将我的import语法更改为require. 我在 webpack.config.js 中与 babel-loader 一起配置了 .babelrc。

真的很困惑下一步该做什么,因为这是我第一次使用 webpack

我的 webpack.config.js

 ***test: /\.(js|jsx)$/,
 include: [
   path.join(__dirname, 'client'),
   path.join(__dirname, './template')
 ],
 loader: 'babel-loader',
 exclude: /node_modules/,
 query: { cacheDirectory: true } ***

.babelrc 文件

{
  "presets": [
    "es2015",
    "react",
    "latest",
    "stage-2"
  ],
  "plugins": [
    "react-hot-loader/babel"
  ]
}

flashMessage.js:13 未捕获类型错误:无法在对象的 eval (flashMessage.js:13) 处读取未定义的属性“ADD_FLASH_MESSAGE”。(bundle.js:1406) 在webpack_require (bundle.js:679) 在 fn (bundle.js:89) 在 eval (index.js:9) 在 Object. (bundle.js:1399) 在webpack_require (bundle.js:679) 在 fn (bundle.js:89) 在 eval (index.js:9)

4

2 回答 2

0

在我完全更改了我的 webpack.config 后,错误仍然存​​在,我发现我没有返回Array.reduce方法,该方法旨在镜像一组动作,所以 webpack 只要文件路径正确就编译它但它失败了由于函数返回 void 而加载。在repo link 这里找到-只是缺少返回关键字

于 2018-01-29T14:36:23.560 回答
0

babel-loader在 webpack 中进行了这样的配置:

        test: /\.(js|jsx)$/,
        exclude: /node_modules/,
        use: {
          loader: 'babel-loader',
          options: {
            cacheDirectory: true,
            presets: ['react'],
          },
        },
于 2018-01-24T10:52:17.317 回答