npm install –save,有什么用的不保存

我理解npm install somethingnpm install something --save之间的区别npm install something --save (任何人想知道,第一个将只安装依赖项,而后者将安装依赖项,并将其添加到您的package.json)。

不过,我不明白为什么有一个 – 保存选项。 换句话说,你为什么要安装一个依赖而不把它添加到你的package.json文件? 为什么 – 保存选项不是默认的?

许多网站/ npm模块/ SaaSbuild议安装他们的模块使用npm install something (newrelic是其中之一,例如),我错过了什么?

编辑 : 从NPM 5开始 ,– --save现在默认打开。

  1. 你会有一个场景,比如你需要一些模块来安装,而不需要增加对package.json文件的依赖,例如。 你只是想尝试一些模块,并不确定你是真的在生产中或部署时使用该模块,所以相反将模块依赖添加到package.json ,只需尝试一下,不要使用--save 。 这就是为什么npm install没有--save存在。

  2. 但是对于大多数模块,您可能需要使用--save ,例如。 npm install express --save ,在这种情况下,你一定知道你要使用快递给你的应用程序。

  3. 另一个场景,不使用 – 保存,将是, npm install heapdumpnpm install nodemon ,我会用它来testing我的应用程序的性能,但不包括在package.json中的依赖项:)

  4. 另外,As @ surajck在下面的评论中说:当你在做全局安装的时候,在这种情况下,使用--save添加依赖关系到package.json是没有意义的。

我刚刚从Jonathan Mills的关于Pluralsight的JavaScript最佳实践课程中学到了一个很好的诀窍。 从docker:
npm config set save=true
现在我不需要记住了 – 再次保存。 而我现在也用
npm config set save-exact=true
因为我想包的确切版本不是^前缀。