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

已更新postcss和nth-check至最新版仍遇npm audit漏洞求助

解决npm audit检测到react-scripts子依赖的postcss/nth-check漏洞问题

问题根源

你直接更新的是项目根目录的postcss和nth-check依赖,但漏洞涉及的这两个包是react-scripts的嵌套子依赖——postcss属于react-scripts>resolve-url-loader,nth-check属于react-scripts>@svgr/webpack>@svgr/plugin-svgo>svgo>css-select,根目录依赖版本的更新不会影响这些嵌套子依赖,所以npm audit仍会报漏洞。

可行解决方案

方法1:用npm overrides强制锁定子依赖版本

在项目根目录的package.json中添加overrides字段,直接指定嵌套依赖的目标版本:

{
  "overrides": {
    "react-scripts": {
      "resolve-url-loader": {
        "postcss": "8.4.38"
      },
      "@svgr/webpack": {
        "@svgr/plugin-svgo": {
          "svgo": {
            "css-select": {
              "nth-check": "2.1.1"
            }
          }
        }
      }
    }
  }
}

添加后执行命令更新依赖:

npm install

重新运行npm audit即可验证漏洞是否消除。

方法2:升级react-scripts到最新稳定版

react-scripts的新版本可能已经内置了修复后的依赖版本,执行命令升级:

npm install react-scripts@latest --save

升级完成后重新执行npm audit确认状态,注意升级前建议备份项目,避免版本兼容问题。

方法3:尝试npm audit fix --force(谨慎操作)

如果前两种方法无效,可以尝试强制修复,但可能会破坏依赖树的兼容性,执行后必须测试项目功能:

npm audit fix --force

验证操作

完成上述任意方案后,执行以下命令确认漏洞已修复:

npm audit

内容的提问来源于stack exchange,提问作者Александр Пушкин

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 20:10:56