Skip to content

vite 开发模式和生产模式的区别

开发模式

  1. 通过express/koa/http-server启动一个本地服务器,通过中间件拦截请求并映射为本地路径
  2. 开发模式下,vite会监听文件变化,自动编译代码,通过socket更新相应的资源
  3. 中间件拦截请求,判断资源类型,css/scss/less等走对应的loader编译成css,打包为ES Module,动态插入style标签。jsx/ts/tsx等走esbuild编译成js。json文件打包为ES Module格式。png/svg等静态资源打包为ES Module格式。
  4. Content-type设置为js
  5. 请求返回

生产模式

第三方依赖

通过esbuild打包第三方依赖,把依赖的代码转换为ES Module格式,并打包到bundle.js中,然后对bundle.js进行压缩、Tree Shaking、代码分割等优化.

项目代码

项目代码大部分都不是存js代码,项目一般都是需要根据路由按需加载,不需要一次性加载,因此采用rollup打包,做代码分割。