3

我正在使用nightmare测试。运行 npm audit 后,我​​收到有关 lodash Prototype 污染的警告。我试图通过运行来解决这个问题,npm audit fix但没有结果。之后我尝试使用--force但仍然得到:

fixed 0 of 1 vulnerability in 2108 scanned packages
  1 vulnerability required manual review and could not be updated

有什么想法可以解决吗?

这是一个屏幕截图: 在此处输入图像描述

4

1 回答 1

1

npm依赖项不会自动升级到更高的主要版本。因此,如果包A依赖于B具有版本规范的包,例如:

// A/package.js
dependencies: {
  "B": "^2.1.3"
}

然后npmB更新任何版本 2.xy,其中 x >= 1 和(y >= 3 如果 x == 1 或 y >= 0 如果 x > 1)。

但是,如果安全修复发生在B版本 3.vw 中,那么安全问题将保留在您的npm存储库中。

这里的问题是,为了能够使用版本 3.vw,您可能必须更新A,因为可能在 2 和 3 之间存在重大更改(即更改了函数名称或删除了对某个属性的支持。)

以下是react-idle-timer模块中中断更改的示例:

从 v3 迁移到 v4

版本 4 中有一些重大更改:

  • 虽然仍然能够渲染孩子,但从版本 4 开始,我们不会将孩子传递给IdleTimer. 除非你真的很擅长shouldComponentUpdate你应该避免使用IdleTimer作为包装组件。
  • 该属性startOnLoad已重命名为startOnMount,以便在 React 上下文中更有意义。
  • 该属性activeAction已重命名为onActive
  • 该属性idleAction已重命名为onIdle
于 2019-02-19T00:28:40.347 回答