Babel
Babel的作用
将ES6+、TS、React等转换成普通的js代码,供浏览器识别
Babel命令行使用
单独使用
- @babel/core
- @babel/cli
- @babel/plugin-transform-block-scoping: 块级作用域插件
- @babel/plugin-transform-arrow-function: 箭头函数插件
npx babel ./src --out-dir ./build --plugins=@babel/plugin-transform-block-scoping,@babel/plugin-transform-arrow-function
# 将当前src目录下的文件进行转换,输出到build文件夹中,转换规则--plugins
- @babel/preset-env:预设preset,需要转换的过多时
npx babel ./src/ --out-dir ./build --presets=@babel/preset-env
Babel底层原理
可以将Babel看作是一个编译器
工作流程
- 解析阶段
- 词法分析
- 语法分析
- 转换阶段
- AST抽象语法树
- 运用各种plugin
- 生成一个新的AST
- 生成阶段
- 代码生成输出阶段
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)