npm依赖项不会自动升级到更高的主要版本。因此,如果包A依赖于B具有版本规范的包,例如:
// A/package.js
dependencies: {
"B": "^2.1.3"
}
然后npm将B更新任何版本 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。