配置webpack babel-loader与在package.json中配置它有什么区别?

Dav*_*vis 6 babel webpack package.json babel-loader

嗨,请帮助我理解设置babel配置.babelrc与webpack加载器选项之间的区别,将其插入package.json.

例如,如果我将预设置于webpack babel-loader选项vs package.json或单独的.babelrc配置文件中会有什么不同吗?

在webpack配置中:

          {
            test: /\.(js|jsx|mjs)$/,
            loader: require.resolve('babel-loader'),
            options: {
                 "presets": [
                    "react-app"
                  ]
            },
          },
Run Code Online (Sandbox Code Playgroud)

在包json中:

  "babel": {
    "presets": [
      "react-app"
    ]
  },
Run Code Online (Sandbox Code Playgroud)

Jay*_*vel 15

Webpack配置:

在webpack.conf.js(no .babelrc)中完全配置babel-loader.

Webpack config + .babelrc:

在webpack.conf.js中启用babel-loader,让options对象为空.配置.babelrc中的选项.Webpack将使用babel-loader和.babelrc中给出的选项.

你可以删除webpack预设选项,如果你有.babelrc,因为babel-loader使用babel,这显然尊重.babelrc.