使用Bun启动Vite+React-Admin项目变慢的原因排查
你的Bun启动变慢?这些配置调整大概率是元凶
TypeScript配置坑点
- 全量严格类型检查拉满:如果
tsconfig.json开了strict: true,还把include范围设得太宽(比如包含node_modules或者测试文件),Bun启动时会挨个检查所有匹配文件的类型,尤其是noUncheckedIndexedAccess、strictNullChecks这类选项,直接让计算量暴增,启动时间自然就上去了。 - 开发环境开了类型声明生成:
tsconfig.json里要是设了declaration: true或declarationMap: true,启动时会额外生成类型文件和映射文件,这玩意儿开发阶段完全没必要,纯纯浪费时间。 - Vite强制TS预编译:
vite.config.ts里如果配了optimizeDeps.force: true,或者tsChecker插件开了全量检查而非增量检查,Bun启动时会硬跑一遍完整的TS检查流程,不慢才怪。
测试配置拖后腿
- 测试插件全局加载:加了
vitest、@testing-library/react这类测试库后,要是在Vite里注册了@vitest/ui这类测试插件,启动时会加载整个测试环境、扫描所有测试文件,直接拖慢启动速度。 - 测试文件被纳入构建范围:不管是
vite.config.ts还是tsconfig.json的include里包含了**/*.test.tsx或者__tests__目录,Bun启动时都会处理这些测试文件,测试文件里一堆断言和模拟逻辑,处理起来特别费时间。 - 提前开了覆盖率收集:要是在Vite插件里配了覆盖率相关选项,启动时会给所有文件插桩,这操作巨耗时,开发阶段绝对别开。
其他容易忽略的点
- 启动脚本加了前置任务:
package.json的启动脚本里如果加了tsc --noEmit这类前置类型检查命令,Bun启动前得先跑完这个,时间直接叠加。 - Bun缓存失效:配置调整后可能导致依赖缓存没了,首次启动会重新下载编译,但要是每次都慢就不是这个问题。
- Vite插件兼容性差:旧版本的
@vitejs/plugin-react这类插件和Bun结合TS配置后容易出性能问题,赶紧更到最新兼容版。
内容的提问来源于stack exchange,提问作者Heikkisorsa
相关产品推荐
相关产品推荐

