问题:在项目中使用webpack打包的时候发现,业务由于引用了node_modules中的代码是es6的。此时无论如何配置webpack配置,都无法使引用的代码降级。
备注:业务其他代码已经降级成功,唯独引用node moudules的代码无法降级。
问题:在项目中使用webpack打包的时候发现,业务由于引用了node_modules中的代码是es6的。此时无论如何配置webpack配置,都无法使引用的代码降级。
备注:业务其他代码已经降级成功,唯独引用node moudules的代码无法降级。
感谢大家关注
在搜索了一下GitHub后发现,babel默认不转换node_moduel中的内容,要去掉这个配置,需要在babelrc中配置 ignore配置项
{
"plugins": [
"transform-runtime"
],
"presets": ["es2015"],
"ignore" : false
}
即可转换nodemodules中的内容。
题外话:babel官方不建议这种用法,因为node modules中暴露出来的代码,应该是立即可用的,不需要经过转换的,大家加入这条语句时可能需要小心点。
采纳的方案是较优方案,可以参考我采纳的那个方案
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
在你的 webpack 配置中,babel-loader 的选项里将需要编译的包包含进来: