首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Babel 编译器
比诺
创建于2022-02-13
订阅专栏
等 3 人订阅
共8篇文章
创建于2022-02-13
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
React / Vue B/S结构下的Babel配置
React.js + ECMA2021 + 尽可能多的支持浏览器 Vue.js 2 + ECMA2021 + 尽可能多的支持浏览器
认识Babel
Babel 是一个现代Javascript语法的编译器,它是一个插件化的工具链,主要用于将采用ECMAScript 2015+ 语法编写的代码转换为向后兼容的Javascript语法
Babel 的工作流程
@babel/parser ES6+ => original AST @babel/traverse 使用深度优先遍历,original AST => transformed AST
regenerator及 regenerator runtime的联系
regenerator 用来转换 generator 和 async 函数,这个包实现了一个功能齐全的源代码转换,它采用了ECMAScripts 2015 or ECMA 2015的的异步迭代器提案中
@babel/runtime 和 @babel/plugin-transform-runtime
@babel/runtime和@babel/plugin-transform-runtime的联系。
JavaScript 模块化标准库 core-js
core-js 是JavaScript 的模块化标准库,包括截止到2021年的ECMAScript的polyfill,如:promises、symbols、collections、iterators等
@babel/polyfill
Babel只会转换ES6+语法,但不会转换新的内置函数、新的静态方法、新的实例方法和生成器函数等,@babel/polyfill通过模拟完整的ES6及ES6+环境(浏览器或Node.js)从而可以正常
@babel/preset-env useBuiltIns 说明
@babel/preset-env useBuiltIns 的解释,可以设置为false、entry、usage,不同的设置对应不同的功能,其中优先使用usage。