我看到了一些教程,其中的命令是:
npm install --save
--save选项是什么意思?
我看到了一些教程,其中的命令是:
npm install --save
--save选项是什么意思?
当前回答
根据NPM文件:
因此,似乎通过运行npm install package_name,包依赖项应该自动添加到package.json中,对吗?
其他回答
当您在npm命令中使用--save来安装包时,这意味着您的项目将在生产环境中安装这些依赖项,例如,如果您安装了一个库来管理日期。
npm install moment --save
npm i moment -S (same result)
(这适用于生产环境)
npm install moment --save--dev
npm i moment -D (same result)
(这是用于开发环境)
npm install package_x—保存
给定的包(package_x)将保存在依赖项内的package.json中。如果您添加
npm安装<<package_x>>--保存设备
那么它将保存在devDependencies中。
更新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 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(2017年5月发布),已安装默认情况下,模块作为依赖项添加,因此--save选项不再需要。其他保存选项仍然存在,并在文档中列出用于npm安装。
原始答案:
要在依赖项中添加包,请执行以下操作:
npm install my_dep --save
or
npm install my_dep -S
or
npm i my_dep -S
在devDependencies中添加包
npm install my_test_framework --save-dev
or
npm install my_test_framework -D
or
npm i my_test_framework -D
包.json