使用Webpack输出es6?

18

有没有办法使用Webpack将所有JavaScript文件捆绑,并将生成的bundle.js输出为es6文件,而不是es5文件?因此,Webpack的工作是打包,但它是否真正负责转换成es6?或者这是某个Webpack加载器的工作?还是我必须使用babel来实现?


1
你需要使用Babel或其他转译器将ES2015编译为ES5。 - evolutionxbox
2个回答

9

从我刚才在 https://webpack.js.org/migrate/5/#turn-off-es2015-syntax-in-runtime-code-if-necessary 上看到的,建议使用 target: ['web', 'es5'] 来支持旧版浏览器,如 IE11。 - user1460043
这在 Webpack 5 迁移中肯定有提到过,但我再也找不到文档中的 ecmaVersion 了。 - Slbox
3
寻找 output.environment 而不是 output.ecmaVersion: https://webpack.js.org/configuration/output/ - Haotian Deng

3

什么?Webpack多年前就已经能做到这一点了。或者我漏掉了什么?我一次运行生成es5和es6两种格式。 - Mathijs Segers
@MathijsSegers 当我添加了某人构建的插件才能从webpack中获得es6输出。我不知道webpack中是否有这个功能。Rollup对我仍然无效。 - Luoruize
4
@MathijsSegers,请问你能告诉我如何“轻松配置输出es6”的方法吗? - hirikarate
@MathijsSegers 我很难实现你说的内容。每当你使用你的模块时,它总是抛出“在<模块名称>中找不到默认导出”的错误。看起来webpack无法输出有效的ES6模块。 - igor
或者你尝试使用默认导出,但没有定义任何内容。这完全取决于你的加载器和配置,我无法帮助你解决问题,但你可以通过打开一个新的问题来获取帮助,包括你当前的设置或示例存储库。 - Mathijs Segers
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接