如何使用babel-loader将node_module内部的一个特定文件/文件夹从es6转换为es5?

时间:2019-01-17 11:08:52

标签: reactjs webpack ecmascript-6 node-modules babel

1.IE11在代码中不支持ES6语法。如果遇到任何ES6语法,它将引发错误。
2.我们在“ node_module / types.js / types.min.js”文件中使用了ES6语法,并且在webpack.config.js中排除了node_module。因此,由于babel-loader无法编译types.min,它在IE11中的抛出错误.js从es6到es5。

我只想包含 \ node_modules \ types.js 以便在webpack.config.js文件中进行转译。或任何更好的解决方案???

尝试

exclude: /node_modules\/(?!(types.js)\/).*/

,但包括整个node_module。

webpack.config.js

module: {
    rules: [
      {
        test: /\.jsx?$/,        
        // exclude: /node_modules/,
        exclude: /node_modules\/(?!(types.js)\/).*/,
        loader: 'babel-loader',
        query: {
          presets: ['es2015', 'react']
        }
      },
      {
        test: require.resolve('jquery'),
        use: ['expose-loader?jQuery', 'expose-loader?$']
      }
    ]
  },

1 个答案:

答案 0 :(得分:0)

exclude: /node_modules(?!(\/|\\)types.js)/,

types.js是您要包含的模块名称。