构建工具Vite | 青训营笔记

98 阅读2分钟

这是我参与「第五届青训营」笔记创作活动的第16天。

本笔记对应的是青训营关于构建工具Vite部分课程。

1 课程内容概括

本笔记对应的课程部分介绍了构建工具Vite。

2 为什么要使用构建工具

前端工程的核心要素是资源。

模块化方案提供模块加载方案,同时支持兼容不同模块的规范。

语法转译提供高级语法转译与资源加载。

提高产物质量可以提供产物压缩、无用代码删除、语法降级。

开发效率可以通过热更新提升。

3 Vite介绍与概览

Vite的定位是新一代前端构建工具。它有两大组成部分,1.No-bundle开发服务,源文件无需打包。2.生产环境基于Rollup的Bundler。

核心特征包括1.高性能,dev启动速度与热更新速度快;简单易用、开发者体验好。

4 当下的问题

缓慢启动:项目编译等待成本高。

缓慢的热更新:修改代码后不能实时更新。

bundle带来的性能开销,JavaScript语言存在性能瓶颈。

5 目前行业趋势

全球浏览器对ESM有普遍支持。

基于Go、Rust等原生语言编写前端编译工具链。

Esbulid是基于Golang开发的前端工具,具有打包器、编译器、压缩器,性能非常高,在Vite中被深度使用。

6 Vite的使用

安装 Node.js、创建新项目、安装 Vite、创建一个新的 Vite 项目、运行 Vite 服务器、在src目录中编写应用程序代码、构建应用程序。

HMR无需额外配置,默认开启。

Tree Shaking无需额外配置,默认开启。优化原理:基于ESM的import/export语句依赖关系、与运行时状态无关;在构建阶段会将未使用到的代码删除。

7 关键技术

依赖预打包、单文件编译、代码压缩、插件机制

8 进阶路线

深入双引擎、插件开发、代码分割、理解babel、语法安全降级、服务端渲染、底层标准、了解社区生态。

9 总结与思考

本节课介绍了构建工具Vite相关的知识。