[英]How can I use babel-polyfill for multiple separated entries / outputs?
我在webpack.config.js
有这个来从两个源创建两个不同的输出:
module.exports = {
entry: {
'dist/index.js': ['babel-polyfill', './src/Component.jsx'],
'example/bundle.js': ['babel-polyfill', './src/Page.jsx'],
},
output: {
path: './',
filename: '[name]',
},
...
使用webpack编译它可以正常工作,但如果我在浏览器中加载index.js
,我会收到此错误:
未捕获的错误:只允许一个babel-polyfill实例
我需要babel-polyfill用于两个输出。 我能做什么?
在开发库(而不是应用程序)时,Babel团队不建议在库中包含babel-polyfill
。 我们建议:
babel-polyfill
。 babel-plugin-transform-runtime
来使用babel-runtime
,它会尝试分析您的代码以确定您正在使用的ES6库功能,然后重写代码以从babel-runtime
而不是全局范围加载polyfilled逻辑。 这种方法的一个缺点是它无法.prototype
像Array.prototype.find
这样的新.prototype
方法,因为它无法知道foo.find
是否是一个数组。 所以我的建议是完全从你的dist/index.js
包中删除babel-polyfill
。
使用idempotent-babel-polyfill
import 'idempotent-babel-polyfill';
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.