vite打包优化有哪些

B站影视 欧美电影 2025-09-19 04:54 1

摘要:Vite 内部默认用 esbuild 来做依赖预构建,速度比传统 webpack 快很多。可以在 vite.config.js 配置 optimizeDeps:

好问题
Vite 项目打包优化 时,主要关注 构建速度产物体积 两个方向。下面我给你系统梳理一下常用优化手段:

Vite 内部默认用 esbuild 来做依赖预构建,速度比传统 webpack 快很多。可以在 vite.config.js 配置 optimizeDeps:export default {optimizeDeps: {include: ['axios', 'lodash-es'], // 预构建依赖,避免每次冷启动慢}}启动时会在 node_modules/.vite 生成缓存文件,下次启动直接用缓存。CI/CD 可以利用 pnpm install --frozen-lockfile && pnpm build 并缓存 .vite 和 node_modules。Vite 使用 rollup 打包,可以通过 build.rollupOptions.output.manualChunks 拆分依赖:export default {build: {rollupOptions: {output: {manualChunks: {vue: ['vue', 'vue-router', 'pinia'],echarts: ['echarts'],lodash: ['lodash-es']}}}}}

这样能让依赖分开缓存,避免用户每次都下载大包。

默认使用 esbuild 压缩,速度快。如果需要更高压缩率,可改用 terser:export default {build: {minify: 'terser',terserOptions: {compress: {drop_console: true,drop_debugger: true,}}}}import viteCompression from 'vite-plugin-compression'export default {plugins: [viteCompression({ algorithm: 'gzip' }), // 或 brotli]}

在服务器端开启 gzip/brotli 响应,能大幅减少传输体积。

export default {build: {rollupOptions: {external: ['vue', 'echarts'],output: {globals: {vue: 'Vue',echarts: 'echarts'}}}}}const Home = => import('@/views/Home.vue')

能看到每个依赖占用体积。

来源:百顺科技达人

相关推荐