我看了一些教程,其中的命令是:
--save选项是什么意思?
在谷歌上找不到答案。
- 如果有疑问,您可以随时执行npm help install以获取更多信息。
- @汤姆-埃多克斯
- 您可以使用快捷方式-s和-d,其中-s是--save和-d是'--save-dev.--save(或simple-s):包将出现在依赖项中。--save dev(或simple-d):包将出现在devdependencies中。
- @谢谢你的电话,我试过了。
- thx@dmitri,我也有同样的问题。来吧,NPM把它添加到你的工具手册页上。
- 我不理解从文档和帮助页面中删除这个选项的决定背后的原因,至少在工具本身有警告的情况下,我也不反对它。同时,新手也通过无数的教程接触到它。然后,他们试图找出它的作用,必须浪费20分钟来阅读文档,最终在stackoverflow上读取NPM历史。奇怪的是,防止这种大规模浪费时间(如果问题的流行是任何迹象)是文档的目的之一。
- @你试过了吗?你认为这样一个8K用户会问一个天真的问题吗?请尊重并更加小心。谢谢您。
- @Namgvu——起初我也是这么想的,但现在我很清楚,5年前,--save被纳入了帮助司令部。
更新NPM 5:
从NPM 5.0.0开始,安装的模块默认作为依赖项添加,因此不再需要--save选项。其他保存选项仍然存在,并在npm install的文档中列出。
原始答案:
在版本5之前,默认情况下,NPM只是在node_modules下安装了一个包。当您试图为您的应用程序/模块安装依赖项时,您需要首先安装它们,然后将它们(连同适当的版本号)添加到您的package.json的dependencies部分。
--save选项指示npm自动将包包含在package.json的dependencies部分中,从而为您节省了一个额外的步骤。
此外,还有补充方案--save-dev和--save-optional,分别保存devDependencies和optionalDependencies下的包。这在安装仅开发包(如grunt或测试库)时很有用。
- 说真的,这是记录在案吗?我在谷歌或npm帮助中找不到它。
- 如果在使用npm install --help时出现这方面的文档,那就太好了。
- @markstosberg:它列在npm help install下,这会在我的机器上显示npm-install的手册页。
- 我想更新所有未版本化(version=)的依赖项,并将它们设置为固定版本。如果我是正确的,npm install --save不会在package.json中更新这些。如果其他人也想做我所做的,请参阅下一个可以运行的可怕命令:cat package.json sed-e's/"([a-z-U.])":[]*"*",?/ 1/g'sed-e's/[]*["]*//g'tr''xargs npm install--save-frbl
- 使用--save --save-exact或--save-dev --save-exact将semver范围固定到特定版本,而不是使用插入符号。同样值得注意的是,如果您这样做,例如npm install sails@balderdashy/sails#master --save --save-exact,您将把最近的提交依赖于指定的github repo的主分支。
- -s,-save:包将显示在依赖项中。
- 很惊讶这不是默认的,就像作曲家
- @吉米史密斯:从NPM5.0开始,它是默认值。
- 默认情况下,NPM 5上的"NPM更新"是否修改package.json?
- @伊戈罗科科夫:默认情况下,我不这么认为。npm update将符合package.json中已有的任何版本规范(因此,它可以执行更新,但仅限于与指定模式匹配的版本)。如果要将更新版本保存到package.json中,可以传递--save。
- @voithos for me npm 5在package.json中更新包版本。为了避免这种情况,我需要运行"npm update--no save"
- 我知道我不应该投反对票,因为我认为NPM做了一个愚蠢的决定。但是,它是如此引人注目。:)
- 似乎已从NPM安装的正式文档中删除了过时的保存选项。
- 刚刚运行npm install -g --save @google-cloud/vision,它保存到C:\Users\MyName\AppData
oaming
pm
ode_modules中,但根本没有添加到package.json中。有什么想法吗?
- 所以这些人加上——除了这些天的NPM命令之外——都是出于习惯。
要在依赖项中添加包,请执行以下操作:
1
| npm install my_dep --save |
或
或
在devdependencies中添加包
1
| npm install my_test_framework --save-dev |
或
1
| npm install my_test_framework -D |
或
1
| npm i my_test_framework -D |
包装袋
- 小心使用像-S-D这样的快捷版本,因为它们必须是大写的。我总是犯这个错误,NPM不会抱怨,也不会将其添加到package.json中。
- 添加PACKAGE?隐马尔可夫模型
- @库甘库马尔,来吧,你知道我的意思。
- 这就是我想要的。我在寻找快捷方式,猜猜我在stackoverflow.com上找到了什么:)
- @Gangadharjannu,我很高兴能帮上忙。由于您的评论,我添加了一个更短的方法。
如果你没有一个package.json文件,它就不会做任何事情。首先运行npm init创建一个。然后调用npm install --save或npm install --save-dev或npm install --save-optional将更新package.json以列出您的依赖项。
- 刚刚发现它可以追溯(看起来)。您可以先运行npm install --save-dev,然后填充npm init和package.json。
您还可以使用-S、-D或-P,这相当于将包保存到应用程序依赖、开发依赖或产品依赖。请参阅下面的更多NPM快捷方式:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| -v: --version
-h, -?, --help, -H: --usage
-s, --silent: --loglevel silent
-q, --quiet: --loglevel warn
-d: --loglevel info
-dd, --verbose: --loglevel verbose
-ddd: --loglevel silly
-g: --global
-C: --prefix
-l: --long
-m: --message
-p, --porcelain: --parseable
-reg: --registry
-f: --force
-desc: --description
-S: --save
-P: --save-prod
-D: --save-dev
-O: --save-optional
-B: --save-bundle
-E: --save-exact
-y: --yes
-n: --yes false
ll and la commands: ls --long |
可以通过运行以下命令来获取此快捷方式列表:
根据NPM文件
因此,通过运行npm install package_name,包依赖项应该自动添加到package.json中,对吗?
- 我猜——当你想要像NPM<5这样的功能时,不需要保存。
- 我明白了,npm config ls -l显示默认情况下,save-xxx选项都是假的,只有save是真的。
从NPM 5开始,NPM将默认保存。在这种情况下,如果您希望NPM以与以前版本相似的旧方式工作(不自动保存),您可以更新配置选项以启用自动保存,如下所示。
1
| npm config set save false |
要获取当前设置,可以执行以下命令:
资料来源:https://blog.pusher.com/what-you-need-know-npm-5/
从NPM 5开始,使用--save-prod或-P比使用--save更为有利,但要做同样的事情,如NPM安装中所述。到目前为止,如果提供,--save仍然有效。
- 这需要到顶端去拯救我们所有人一个令人眼花缭乱的阅读变化,矛盾和线程劫持。所以需要鼓励使用有效的URL进行简洁的回答,这样我们就可以避免CRUD,继续我们的工作。(Quora有一个简洁的"这个答案是否相关"等,我甚至在那之前就建议这样做了)糟糕的是,官方的节点文档没有提到旧的(失效的)选项,而且大多数节点引用似乎都是5.0之前的版本,这让我们开始思考。
npm install package_x --save
给定的包(包_x)将保存在依赖项内部的package.json中。如果添加
npm install <> --save-dev
然后它将保存在"devdependencies"中。
向package.json添加依赖项的更简单(也更棒)的方法是从命令行添加依赖项,用--save或--save dev标记npm安装命令,这取决于您希望如何使用该依赖项。
npm install --save或npm install --save-dev我们为什么选择这两个选项之间的1而安装包在我们的项目。
从上面的事情是清晰的答案,输入要添加npm install --save在dependency场dev-dependencypacakage.json文件和其他人。
这样的问题,为什么我们需要进入我们的arises安装模块文件,可以直接pacakge.json签入代码或代码git给我们一个我们可以检查它总是给它或没有,因为它是在node-modules超大尺寸和因此可在普通的地方。所以为了避免这做。
那么,其他人想得到所有的知识模块,是专门为那个项目或需要的答案是这样的文件,有from the package.json入门包的运行所需的一切或是项目的发展。
因此,这样的代码后,它会读package.json we simply need to run the npm install命令文件和所需的安装必要的软件包。
NPM I(包名称)--保存
简单地说,使用上面的命令,我们不需要在package.json文件中写入包名,它会自动添加它的名称和与您下次进行生产或设置时需要的版本的依赖关系。
NPM帮助安装
上面的命令将帮助您找到更多的选项和正确的定义,如图所示。