19

这是一个很难的问题,我会尽力解释。

如何在没有安装依赖项或新包(在 package/-lock.json 中定义)的情况下添加新包?

例如:目前,我们有 package.json 和 package-lock.json 来维护版本控制。

但是,如果我们尝试添加一个新包,其他包(与 package.json 或 package-lock.json 相关)正在更新/添加。

目的只是添加新包,在 package.json 和 package-lock.json 中添加这些包信息,而不影响当前安装的包。

4

2 回答 2

14

如果您不希望任何包自动更新,请转到 package.json 并进行一些更改。例如更改 "react-native": "^0.56.1""react-native": "0.56.1"

只需删除您在版本声明之前看到的插入符号“ ^”或波浪号“ ”符号。~

  • 插入符号“ ^”符号使 npm 能够更新次要版本更新(例如上面的 56 到 57 或更高版本)和
  • 波浪号“ ~”符号使 npm 能够更新补丁版本更新([major, minor, path]元组中最右边的元素)

如果你声明你的包版本没有任何标志,它们将不会被更新。

于 2019-02-23T07:56:56.780 回答
1

使用npm ci代替npm install

文档

它永远不会写入 package.json 或任何包锁:安装基本上是冻结的。

还有其他注意事项和差异,我建议阅读文档以获取更多详细信息。例如,它将删除现有node_module目录。

于 2021-11-12T12:00:26.907 回答