白狗子的博客

「天上浮云如白衣,斯须改变如苍狗。」——杜甫

Vite-面试-依赖预构建

2026年10月16日·Admin·2 次浏览

面试题:什么是依赖预构建?为什么要做?

问题背景

npm 包可能是 CJS、多文件、或 入口不指向浏览器友好文件;浏览器 ESM import 无法像 Node 一样解析。

Vite 做法

启动时扫描源码中的依赖,用 esbuild 打成 优化后的依赖,放入 node_modules/.vite(可缓存),并改写为可 ESM 直连的形式。

收益

  • 单文件/少请求,减少浏览器对 node_modules 海量小文件请求。
  • 统一 ESM 接口,加快后续 按需编译。

配置入口

optimizeDeps.include/exclude、force 重跑预构建;升级依赖后偶需删缓存。

© 2025 My Blog. Built with Nuxt.js v4