这是我参与「第四届青训营 」笔记创作活动的第9天
一、Vite 是什么?为什么要用?
Vite是一种前端构建工具。
由以下两部分组成:
- No-bundle 开发服务,源文件无需打包
- 生产环境基于Rollup 的Bundler
优势:
- 高性能,dev启动速度和热更新速度非常快
- 简单易用,开发者体验好
基于原生ESM的开发服务优势
当使用ESM 模式时, 浏览器会构建一个依赖关系图。不同依赖项之间的连接来自你使用的导入语句。 通过这些导入语句, 浏览器 或 Node 就能确定加载代码的方式。通过指定一个入口文件,然后从这个文件开始,通过其中的import语句,查找其他代码。
- 无需打包项目源代码
- 天然的按需加载,即只加载访问的html文件中需要资源文件
- 可以利用文件级别的浏览器缓存
基于Esbuild的编译性能优化
二、如何使用Vite
项目初始化
启动完成后,打开浏览器访问对应地址即可
使用Sass/Scss & CSS Module
使用Scss & CSS Module
HMR
在对浏览器的组件有操作后,对项目进行修改,已经操作过的部分不会被重置,即热更新是局部更新。
使用静态资源
生产环境Tree Shanking
Tree Shanking在Vite中无需配置,默认开启!
在终端中输入:
prom run build
生成的产物在dist目录的assets中,在最会打包的代码产物中,没有用到的模块被自动Tree Shaking,已经在产物中无法找到,已经被优化掉,提高了性能。
三、vite整体框架
关键技术
- 依赖预打包
- 单文件编译
- 代码压缩 压缩效率高
- 插件机制