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

React项目执行npm install出现废弃警告问题求助

问题详情

删除node_modules文件夹后执行npm install重建依赖时出现大量废弃警告,该问题在多台安装了最新版Node-v18.16.0-x64与VSCodeUserSetup-x64-1.78.2的设备上均存在,且不局限于特定项目——使用npx create-react-app my-app创建新项目时同样会触发此类警告。具体疑问如下:

  1. npx create-react-app my-app命令是否已被废弃?
  2. 若是,如何为通过此命令创建的旧项目重建node_modules文件夹?
  3. 若否,如何解决当前的废弃警告问题?

对应的警告信息:

> npm install
npm WARN deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
npm WARN deprecated rollup-plugin-terser@7.0.2: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-terser
npm WARN deprecated sourcemap-codec@1.4.8: Please use @jridgewell/sourcemap-codec instead
npm WARN deprecated w3c-hr-time@1.0.2: Use your platform's native performance.now() and performance.timeOrigin.
npm WARN deprecated workbox-cacheable-response@6.6.0: workbox-background-sync@6.6.0
npm WARN deprecated svgo@1.3.2: This SVGO version is no longer supported. Upgrade to v2.x.x.

added 1495 packages, and audited 1496 packages in 1m

234 packages are looking for funding
  run `npm fund` for details

6 high severity vulnerabilities

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.
解答

1. npx create-react-app my-app是否已废弃?

已废弃。React官方在2023年宣布停止维护Create React App(CRA),不再推出新功能,推荐使用Vite、Next.js等更现代的构建工具创建新项目。

2. 旧CRA项目如何重建node_modules文件夹?

  • 直接执行npm install即可完成依赖重建,即便存在废弃警告,只要项目能正常运行,就不会影响核心功能。
  • 若想减少部分警告,可先将CRA升级到最后一个维护版本react-scripts@5.0.1,执行命令:
    npm install react-scripts@5.0.1 --save
    
    之后再运行npm install重建依赖。

3. 如何解决废弃警告问题?

方法一:忽略非关键警告

这些废弃警告大多来自CRA依赖树深处的间接依赖,仅提示该依赖已停止维护,不会直接导致项目崩溃。只要项目能正常构建和运行,可暂时忽略此类警告。

方法二:升级依赖或迁移构建工具

  • 升级核心依赖:手动更新package.json中的react、react-dom到最新稳定版,再执行npm install,能减少部分依赖链上的废弃提示。
  • 迁移到现代构建工具:如果希望彻底解决依赖废弃问题,建议将项目迁移到Vite或Next.js。两者都提供了CRA迁移指南,可平滑过渡,同时获得更优的构建性能和更简洁的依赖树。

方法三:处理高风险漏洞

对于npm audit提示的高风险漏洞,谨慎使用npm audit fix --force——该命令会强制升级依赖,可能引发兼容性问题。更稳妥的操作是:

  1. 执行npm audit查看漏洞的具体来源和详情;
  2. 针对具体漏洞,手动升级对应的依赖包到安全版本;
  3. 若漏洞来自间接依赖,可在package.json中使用overrides字段指定依赖的安全版本,示例:
    "overrides": {
      "svgo": "^2.8.0"
    }
    
    配置完成后执行npm install即可覆盖旧版本。

内容的提问来源于stack exchange,提问作者Y.S.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 15:40:03