Webpack构建项目与... argumetns即使babel有perser es2015

时间:2017-08-22 20:57:07

标签: webpack-2 babel

您可以阅读帖子的主题。我正在使用webpack来构建es2015的berset项目。每个文件都被“编译”正确,但是,正如我所注意到的,webpack添加了一些自己的变量。我现在播种了,因为我在IE11中检查了我的项目,并在(输出文件)上抛出了语法错误:

var Utils = {
//...
 warn: function () {
    if (window.console && 'function' === typeof window.console.warn)
      window.console.warn(...arguments);
  },

  warnOnce: function(msg) {
    if (!pastWarnings[msg]) {
      pastWarnings[msg] = true;
      this.warn(...arguments);
    }
  },
//...
}

问题出现是因为...arguments

为什么webpack会这样做?

我的webpack配置:

module.exports = {
entry: ['babel-polyfill', path.resolve(__dirname + '/src/app.js')],

output: {
    path: __dirname + '/bin',
    filename: 'app.bundle.js',
},
resolve: {
    extensions: ['.js'],
    modules: ['node_modules'],
    alias: {/*...*/}
},
devtool: "source-map",
target: 'web',
node: {
    fs: "empty"
},
plugins: [
    new webpack.ProvidePlugin({/*...*/})
],
module: {
    loaders: [{
        test: /\.js$/,
        exclude: /node_modules/,
        use: [{
            loader: 'babel-loader',
            options: {
                presets: 'es2015',
            },
        }]
    }, {
        test: /\.scss$/,
        use: [/*...*/]
    }]
}
};

1 个答案:

答案 0 :(得分:0)

似乎我通过import语句导入ParsleyJs。这导致webpack将Parsley视为原样。我只是将这个依赖项添加到我的webpack配置文件中,webpack正确地将它编译为es5