babel
- 环境搭建; @babel/cli、@babel/core、@babel/preset-env;dev, @babel/polyfill
- 基本配置
- presets和plugins
"presets": [["@babel/preset-env"]]
babel-polyfill
什么是polyfill?
core-js和regenerator
babel-polyfill是两者的集合
特性:
语法,符合 ES5 语法规范
不处理模块化(webpack)
babel-polyfill按需引入
- 文件较大
- 只有一部分功能, 无需全部引入。
- 配置按需引入
{ "useBuiltIns": "usage", "corejs": 3 }
babel-runtime @babel/plugin-transform-runtime", @babel/runtime--dev
babel缺点:污染全局环境(做一个独立的web系统, 不影响;做一个第三方, 则会冲突)
"plugins": [
[
"@babel/plugin-transform-runtime",
{
"absoluteRuntime": false,
"corejs": 3,
"helpers": true,
"regenerator": true,
"useESModules": false
}]]