–save和–save dev之间有什么区别?

以下两者之间的区别是什么:

npm安装[软件包名称]

以及:

npm安装[软件包名称]–保存

以及:

npm安装[软件包名称]--保存开发

这是什么意思?而--save-dev关键字的真正效果是什么

如果您在自己的项目中同时尝试了--save--save dev这两种方法,那么它们之间的差异可能不会立即被注意到。这里有几个例子

假设您正在构建一个应用程序,它使用moment包解析和显示日期。您的应用程序是一个调度程序,因此它确实需要此程序包才能运行,如:没有它无法运行。在这种情况下,您将使用

npm安装时刻—保存

这将在package.json中创建一个新值

”;“依赖项”:{
...
&“时刻”:“^2.17.1”;
}

当您在开发时,使用诸如测试套件之类的工具确实很有帮助,并且可能需要jasmine core和karma。在这种情况下,您将使用

npm安装jasmine内核--保存开发
npm安装karma--保存开发

这还会在package.json中创建一个新值

”;devDependencies”是指:{
...
&“茉莉花芯”:“^2.5.2”;,
&“因果报应”:“^1.4.1”;,
}

您不需要测试套件以正常状态运行应用程序,因此它是一个--save dev类型依赖项,仅此而已。你可以看到,如果你不明白到底发生了什么,这有点难以想象

直接取自NPM文档#依赖项

依赖关系

依赖项在映射包名称的简单对象中指定
到一个版本范围。版本范围是具有一个或多个
更多的空间分隔描述符。还可以识别依赖关系
使用tarball或git URL

请不要在依赖项中放置测试线束或Transpiler
对象请参见下文的devDependencies

即使在文档中,它也会要求您使用–save dev作为测试线束之类的模块

我希望这会有所帮助,而且很清楚

发表评论