前端工程化之:webpack4-1(babel的安装和使用)

一、安装

官网:https://babeljs.io/

民间中文网:https://www.babeljs.cn/

1.babel简介

babel一词来自于希伯来语,直译为巴别塔。

巴别塔象征的统一的国度、统一的语言

而今天的 JS 世界缺少一座巴别塔,不同版本的浏览器能识别的 ES 标准并不相同,就导致了开发者面对不同版本的浏览器要使用不同的语言,和古巴比伦一样,前端开发也面临着这样的困境。

babel 的出现,就是用于解决这样的问题,它是一个编译器,可以把不同标准书写的语言,编译为统一的、能被各种浏览器识别的语言。

由于语言的转换工作灵活多样, babel 的做法和 postcss 、 webpack 差不多,它本身仅提供一些分析功能,真正的转换需要依托于插件完成。

2.babel的安装

babel 可以和构建工具联合使用,也可以独立使用。

如果要独立的使用 babel ,需要安装下面两个库:

  • @babel/core: babel 核心库,提供了编译所需的所有api
  • @babel/cli:提供一个命令行工具,调用核心库的api完成编译
javascript 复制代码
npm i -D @babel/core @babel/cli

二、babel的使用

1.babel的使用

@babel/cli 的使用极其简单,它提供了一个命令 babel 。

javascript 复制代码
# 按文件编译
babel 要编译的文件 -o 编辑结果文件
// npx babel a.js -o c.js 

# 按目录编译
babel 要编译的整个目录 -d 编译结果放置的目录
// npx bael js -d dist
// npx bael js -d dist -w(实时监控)

2.babel的配置

可以看到, babel 本身没有做任何事情,真正的编译要依托于 babel插件babel预设来完成。

babel 预设和 postcss 预设含义一样,是多个插件的集合体,用于解决一系列常见的兼容问题。

如何告诉 babel 要使用哪些插件或预设呢?需要通过一个配置文件 .babelrc 。

javascript 复制代码
{
    "presets": [],
    "plugins": []
}
相关推荐
源心锁10 小时前
丧心病狂!在浏览器全天候记录用户行为排障
前端·架构
GIS之路10 小时前
GDAL 实现投影转换
前端
烛阴11 小时前
从“无”到“有”:手动实现一个 3D 渲染循环全过程
前端·webgl·three.js
BD_Marathon11 小时前
SpringBoot——辅助功能之切换web服务器
服务器·前端·spring boot
Kagol11 小时前
JavaScript 中的 sort 排序问题
前端·javascript
eason_fan11 小时前
Service Worker 缓存请求:前端性能优化的进阶利器
前端·性能优化
光影少年11 小时前
rn如何和原生进行通信,是单线程还是多线程,通信方式都有哪些
前端·react native·react.js·taro
好大哥呀12 小时前
Java Web的学习路径
java·前端·学习
HashTang12 小时前
【AI 编程实战】第 7 篇:登录流程设计 - 多场景、多步骤的优雅实现
前端·uni-app·ai编程
cos12 小时前
Fork 主题如何更新?基于 Ink 构建主题更新 CLI 工具
前端·javascript·git