- 需要安装单独依赖
//核心和命令行工具
npm i -D @babel/core @babel/cli
//需要挨个装plugin太麻烦,安装预设更方便
npm i -D @babel/preset-env
//每个js文件babel后都会生成很多helper函数,抽离helper函数,各个文件按需进入
npm i -D @babel/plugin-transform-runtime
//防止污染全局变量
npm install --save @babel/runtime-corejs3
- babel.config.js示例
//IIRC useBuiltins和@babel/plugin-transform-runtime不需要一起使用
//他们的功能是一样的,但是plugin-transform-runtime目前不支持按需target
module.exports = function (api) {
api.cache(true);
const presets = [
[
"@babel/preset-env",
{
useBuiltIns: "usage",
corejs: 3,
targets: {
browsers: ["> 1%", "last 2 versions", "not ie <= 8"],
},
},
],
];
const plugins = [["@babel/plugin-transform-runtime", { corejs: 3 }]];
return {
presets,
plugins,
};
};
参考:
https://segmentfault.com/a/1190000019718925
https://zhuanlan.zhihu.com/p/147083132