@babel/preset-env useBuiltIns 说明

9,991 阅读1分钟

推荐阅读:blog.hhking.cn/2019/04/02/…

useBuiltIns

false

1
"useBuiltIns": false,

此时不对 polyfill 做操作。如果引入 @babel/polyfill,则无视配置的浏览器兼容,引入所有的 polyfill

entry

12
"useBuiltIns": "entry","corejs": 2,

根据配置的浏览器兼容,引入浏览器不兼容的 polyfill。需要在入口文件手动添加 import '@babel/polyfill',会自动根据 browserslist 替换成浏览器不兼容的所有 polyfill

这里需要指定 core-js 的版本, 如果 "corejs": 3, 则 import '@babel/polyfill' 需要改成

12
import 'core-js/stable';import 'regenerator-runtime/runtime';

usage

12
"useBuiltIns": "usage","corejs": 2,

usage 会根据配置的浏览器兼容,以及你代码中用到的 API 来进行 polyfill,实现了按需添加。