You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

create-react-app项目哪些依赖可放入devDependencies缩减node_modules体积

可迁移到devDependencies的依赖清单

你当前dependencies列表中,以下包仅在开发/测试环节生效,可直接移入devDependencies:

  • 所有测试相关依赖:@testing-library/jest-dom、@testing-library/react、@testing-library/user-event,这类包仅用于单元测试编写与执行,生产环境不会加载
  • web-vitals:CRA默认内置的性能指标采集工具,如果你没有在生产环境做性能数据上报的需求,可移入devDependencies
  • react-scripts:CRA的核心脚手架工具,仅提供开发服务启动、生产代码构建能力,构建过程会自动抽离需要的运行时代码打入产物,本身不需要存放在生产依赖中
  • express:如果你仅用它做本地开发的mock服务、静态资源调试服务,可移入devDependencies;如果是线上SSR部署时需要的运行时依赖,则保留在dependencies中

必须保留在dependencies的依赖说明

剩余的@babel/runtime、@pathofdev/react-tag-input、axios、generate-password、jquery、react、react-dom、react-icons、react-router-dom、react-select、react-toastify、recoil都属于运行时需要加载的依赖,代码构建后会被打包到生产产物中,不能移入devDependencies。

额外缩减node_modules体积的方案

  • 包管理器替换:使用pnpm代替npm/yarn,pnpm采用硬链接+软链接的依赖管理结构,相同版本的依赖全局只会存一份,可缩减70%以上的node_modules体积
  • 生产部署清理:生产环境安装依赖时执行npm install --production,会自动跳过所有devDependencies的安装,大幅减小生产环境的依赖体积
  • 定期清理冗余依赖:排查项目中未实际引用的依赖,直接从package.json中移除

内容的提问来源于stack exchange,提问作者Loga Thrim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 20:06:03