babel-eslint@8.2.6+ 配合 eslint@5.6.0+ @babel7
babel-loader 7.x对应babel-core 6.x
babel-loader 8.x对应@babel/core 7.x
@babel目录为7.x版本
babel插件作用
@babel/babel-transfrom-runtime 不污染全局变量的情况下,提供支持Promise,Set,Symbol,Array.from,async转换语法和模拟api,依赖于babel-runtime转换
* 需配合@babel/runtime-corejs2或者@babel/runtime-corejs3
*@babel/runtime-corejs2支持Promise、Set等,依赖于corejs@2,会产生支持Promise的全局变量
* @babel/runtime-corejs3额外支持[].includes语法等 ,依赖于core-js-pure,不会产生全局变量,局部变量引用
@babel/preset-env内置polyfills模块,通过设置useBuiltIns: 'usage'自动引入polyfills,即@babel/generator-runtime和core-js 'entry'则是开启需手动文件引入polyfills
@babel/plugin-syntax-dynamic-import 由@babel/preset-env内置插件,用以解析识别import()动态导入语法
@babel/plugin-proposal-nullish-coalescing-operator 解析es2020 ??操作符
@babel/plugin-proposal-optional-chaining 解析es2020 ?.操作符