【问题标题】:Webpack output to es5 / es6?Webpack 输出到 es5 / es6?
【发布时间】:2018-04-26 16:24:52
【问题描述】:

是否可以让 webpack 输出多个 ECMAScript 版本?

类似:

  • bundle5.js
  • bundle6.js

编辑:

我的意思是,Webpack 是否可以在一次运行中创建两种变体。

【问题讨论】:

  • 我很确定所有 ES5 代码都是 ES6 兼容的。顺便说一句,它们只是标准。所以如果你需要 ES5,不要输出 ES6。
  • @Socrates 您找到实现此目的的方法了吗?如果你找到了办法,你能把它写下来作为答案吗?我也需要做到这一点。
  • @PEIN 不,我找不到任何方法来实现这一点。不过仍在寻找解决方案。

标签: webpack ecmascript-6 ecmascript-5


【解决方案1】:

在一次通过中,我不确定您是否可以使用 webpack 做到这一点。 但是您可以使用一组配置导出多个目标。

如果你使用 babel 7,你可以这样做(未经测试):

module.exports = [
  {
    output: {
      filename: './dist-bundle-es5.js'
    },
    module: {
      rules: [
        {
          test: /\.js$/,
          exclude: /node_modules/,
          use: {
            loader: 'babel-loader',
            options: {
              cacheDirectory: true,
              presets: [
                [
                  '@babel/preset-env',
                  {
                    forceAllTransforms: true
                  }
                ]
              ]
            }
          }
        }
      ]
    },
    name: 'es5',
    entry: './app.js'
  },
  {
    output: {
      filename: './dist-bundle-es6.js'
    },
    name: 'es6',
    entry: './app.js'
  }
];

检查:https://webpack.js.org/configuration/configuration-types/#exporting-multiple-configurations

编辑:添加示例

【讨论】:

  • 请在您的回答中包含相关信息。
猜你喜欢
  • 1970-01-01
  • 2016-03-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-21
  • 2014-10-12
  • 2017-10-07
  • 1970-01-01
相关资源
最近更新 更多