我看到了一些教程,其中的命令是:

npm install --save

--save选项是什么意思?


当前回答

npm install--save或npm install--save-dev是我们在项目中安装软件包时在这两个选项中选择一个选项的原因。

从前面的回答中可以看出,npm install--save将在package.json文件的dependency字段中添加一个条目,而另一个条目则在dev dependency中添加。

所以问题来了:为什么我们需要package.json文件中的安装模块条目,因为每当我们在Git中签入代码或将代码交给某人时,我们总是在不使用node_modules文件夹的情况下提交或检查代码,因为它的大小非常大,而且在公共位置也可用,所以为了避免这种情况,我们这样做。

那么,另一个人将如何获得该项目特定或需要的所有模块,因此答案来自package.json文件,该文件包含运行或开发该项目所需的所有包的条目。

因此,在获得代码后,我们只需运行npm install命令。它将读取package.json文件并安装必要的软件包。

其他回答

更新npm 5:

从npm 5.0.0开始,默认情况下已安装的模块作为依赖项添加,因此不再需要--save选项。其他保存选项仍然存在,并在npm安装文档中列出。

原答覆:

在版本5之前,NPM默认只在node_modules下安装了一个包。当您尝试为应用程序/模块安装依赖项时,需要首先安装它们,然后将它们(以及相应的版本号)添加到package.json的依赖项部分。

--save选项指示NPM自动将包包含在package.json的dependencies部分中,从而节省了额外的步骤。

此外,还有两个补充选项--save dev和--save optional,它们分别将包保存在devDependencies和optionalDependencie下。这在安装仅用于开发的软件包时非常有用,例如grut或测试库。

截至npm 5的更新:

从npm 5.0.0开始,默认情况下已安装的模块作为依赖项添加,因此不再需要--save选项。其他保存选项仍然存在,并在npm安装文档中列出。


原答覆:

如果你没有package.json文件,它不会做任何事情。首先运行npm init创建一个。然后调用npm install--save或npm install--save dev或npm install--save optional将更新package.json以列出依赖项。

根据NPM文件:

因此,似乎通过运行npm install package_name,包依赖项应该自动添加到package.json中,对吗?

向package.json添加依赖项的更简单(更棒)方法是从命令行执行,根据您希望如何使用该依赖项,使用--save或--save-dev标记npm安装命令。

从npm 5开始,npm现在将默认保存。

在这种情况下,如果您希望npm以类似于以前版本的方式工作(没有自动保存),您可以更新配置选项以启用自动保存,如下所示。

npm config set save false

要获取当前设置,可以执行以下命令:

npm config get save

来源:以下是你需要了解的npm 5