babel

    1. 环境搭建; @babel/cli、@babel/core、@babel/preset-env;dev, @babel/polyfill
    2. 基本配置
    3. 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系统, 不影响;做一个第三方, 则会冲突)

    1. "plugins": [
    2. [
    3. "@babel/plugin-transform-runtime",
    4. {
    5. "absoluteRuntime": false,
    6. "corejs": 3,
    7. "helpers": true,
    8. "regenerator": true,
    9. "useESModules": false
    10. }]]