一、Babel 是什么
Bebal
可以帮助我们将新 JS 语法编译为可执行且兼容旧浏览器版本的一款编译工具。
举个例子,ES6(编译前):
const fn = () => {
};
ES5(编译后):
var fn = function() {
}
二、Babel 的应用场景
想体验新 JS 语法带来的便捷和可读性,又希望能够向下兼容?Babel
可以帮你做到。
不仅如此,Babel
还支持解析 TS
、JSX
等多种语法,给 ES6/7/8/9 Typescript、React / Vue3 JSX 等"语法糖"带来无限的可能。
三、Babel 的基本使用
3.1 准备工作
- 新建项目:
babel-demo
- 初始化
npm
- 安装 Babel 相关依赖包
命令流程如下:
mkdir babel-demo && cd babel-demo && touch app.js
yarn init -y
yarn add @babel/core @babel/cli @babel/preset-env --dev
依赖包解释:
- @babel/core 是
Babel
的编译核心工具。 - @babel/cli 是
Babel
提供的脚手架,后面会用到并解释。 - @babel/preset-env 集成了各种 plugin 插件,后面会用到并解释。
项目结构如下:
3.2 编译 JS
- 打开
app.js
,添加如下代码:
const app = () => {
const greeting = 'World' ?? 'Tony'
console.log