Babel入门配置

1. babel环境搭建和基本配置

高级语法通过.babelrc文件中的presets下的@babel/preset-env解决,如果用react就是添加@babel/preset-react, plugins属于presets的扩充

2. babel-polyfill是什么

是core-js和regenerator的集合, 在babel7.4之后弃用了, 现在推荐直接使用 core-js和regenerator

什么是polyfill?
根据浏览器做补丁, 比如浏览器是否支持indexOf

什么是core-js?
集成了所有的ES6,7等以上新语法的polyfill补丁

3. babel-polyfill按需引入

babel只解析语法,
不处理模块化 (webpack处理模块化)

babel-polyfill文件很大, 需要做按需导入
Babel入门配置

4. babel-polyfill的问题

  1. 会污染全局环境, 如果做一个第三方的库, 会产生问题

解决方案:

  1. 安装@babel/plugin-transform-runtime和@bael/runtime插件
  2. 配置.babelrc