Webpack 与 Vite 对比

141 阅读2分钟

Vue CLI vs Vite

Vite 比 Vue CLI 快 10-100 倍 ?

Vue CLI 的功能

  • 工程脚手架
  • 开发服务器
  • 插件系统
  • 用户UI界面 Vue CLI 构建基于 Webpack 的,主要耗时都在 Webpack 的性能上。

Vite

利用 浏览器的 原生 ES 模块,基于 Rollup 进行进行构建。处于测试阶段,不是一体化的工具,目的就是一个 快速的开发服务器和简单的构建。

Webpack 与 Vite 对比

image.png

Vite 为什么这么快

  1. 基于增量构建:Vite 的构建工具使用增量构建的策略,只重新构建发生变化的文件,而不需要重新构建整个项目。这样可以避免无谓的重复构建,减少了构建时间。
  2. 快速的模块热替换(Hot Module Replacement,简称 HMR):Vite 支持 HMR 技术,当文件发生变化时,它只会重新加载变化的模块,而不需要刷新整个页面。这个特性在开发过程中可以极大地提升开发者的效率,减少了等待编译的时间。
  3. 基于原生 ES 模块(ESM):Vite 的构建工具采用了原生 ES 模块的方式进行模块解析和加载,无需进行额外的打包和转换,在浏览器端可以直接运行原始的 ES 模块代码。这样减少了构建的复杂性和开销,使得构建过程更加高效。
  4. 缓存管理:Vite 的构建工具会对已经构建好的文件进行缓存管理,只有在需要的时候才会重新构建。当文件没有发生变化时,可以直接使用缓存的结果,避免重复的构建过程,进一步提升了构建速度。

总的来说,Vite 的构建工具通过采用增量构建、快速的模块热替换、原生 ES 模块和缓存管理等技术手段,实现了快速构建的效果,提升了开发者的开发体验和效率。

vite 的缺点

测试阶段 只支持新版支持 ES modules 的浏览器 第三方库也需要都支持 ES modules CommonJS 支持有限 开发构建属于两套系统,可能导致生成和开发不一致的行为