Webpack 4 babel loader不能正常工作

时间:2018-04-23 15:42:08

标签: javascript reactjs webpack

我尝试使用React设置Webpack 4.6.0,我遇到了一个问题: enter image description here

<{3>}中的

...
rules: [
  {
    test: /\.jsx?$/,
    exclude: /node_modules(?!\/myuimodule)/,
    use: ['babel-loader'],
  },
...

和.babelrc

{
  "presets": [
    "@babel/react",
    [
      "@babel/preset-env",
      {
        "useBuiltIns": "usage",
        "modules": false
      }
    ]
  ],
  "plugins": [
    "@babel/plugin-proposal-class-properties",
    "@babel/plugin-proposal-object-rest-spread",
    "@babel/plugin-syntax-dynamic-import"
  ]
}

为什么babel-loader不排除myuimodule?

2 个答案:

答案 0 :(得分:0)

由于您的exclude行,您收到此错误。 Webpack尝试构建您的包。它从entry这一行

开始找到依赖树的某个地方
import Progress from './path/to/Progress.jsx'

然后它尝试解析并将文件加载到bundle中。它找不到此文件的规则,因此没有加载器可以完成它们的工作。它遇到jsx标记并且无法解析它,因此它会引发错误Unexpected token并提醒开发人员检查此文件的加载程序是否存在。

它无法找到此文件的加载程序,因为您明确地将此文件排除在加载程序处理之外。

答案 1 :(得分:0)

似乎很疯狂,但是尝试将.babelrc重命名为babel.config.json。不知道为什么这行得通,但是它为我解决了两次问题。不记得我第一次在哪里找到这个解决方案了。