启动

webpack 在 run 的时候就要分析并构建起整个项目,然后才能提供服务

vite 的话对于项目安装的依赖也会进行一个预购建,但是是用 go写的esbuild,性能上吊打并js写那些编译器。对于项目源码的话则是使用 ESM 的方式去提供,一开始启动的时候并不会马上进行处理,而是等到浏览器需要用到的时候才会进行处理然后传递给浏览器。

热更新

和上面的启动一样,webpack的每次热更新都要重新进行构建全部文件,项目一大就慢的一批,vite 在修改的时候,只需要断开自己和HMR间的联系,然后重新请求自己就可以得到更新了。不过感觉整个会有点问题,有时候会出现热更新失效的问题。

打包

打包vite 用的是rollup,也是传统的打包,不过他比webpack轻量,并且打包体积比webpack小


瓦雀