vite 性能编译预编译优化我们安装在 node_modules 里面的库在vite 第一次启动之前就会把我们所依赖的这些包进行一个编译然后放到一个 catch 里面之后我们所有用到第三方库的包就会从 catch 里面直接去取我们可以查看 node_modules/.vite catch 到的依赖放在这里我们删掉重新启动会再次出现.vite 文件夹,.vite是生成缓存的地方之后用到依赖的时候直接读这个缓存就可以了不再走任何跟编译有关的内容预编译过程中有一个非常重要的事情就是把 Commonjs 转换为 esm ,这样才能正常工作,比如 react 项目中有很多 commonjs 的代码我们直接在 .vite 中查看都已经编译为 esm 形式代码设置预编译目录exportdefaultdefineConfig({plugins:[react()],optimizeDeps:{include:[],// 预编译文件目录设置exclude:[],// 不需要预编译文件目录}})初期vite 扫描我们的源码没有发现我们依赖的第三方插件这个插件是 commonjs 规范预编译时就会漏掉这个插件导致运行时在浏览器上跑 commonjs 代码会报错这时候需要我们在这块 使用 include 添加上这个插件预编译会把零散的文件打包到一起我们下载使用 lodash-es 这个插件是由很多js文件组成的如果没有预编译我们引入该插件会在控制台发送请求很多的 js如果我们使用了编译控制仅发送一次请求就把所有js 打包成的一个文件请求回来vite 环境自动把我们开发的文件设置为不缓存把三方插件设置为缓存