为啥 gulp 需要安装 --save-dev 而不仅仅是 --save
Posted
技术标签:
【中文标题】为啥 gulp 需要安装 --save-dev 而不仅仅是 --save【英文标题】:Why does gulp need to be installed with --save-dev and not just --save为什么 gulp 需要安装 --save-dev 而不仅仅是 --save 【发布时间】:2016-02-15 19:17:10 【问题描述】:从文档中, https://github.com/gulpjs/gulp/blob/master/docs/getting-started.md
$ npm install --save-dev gulp
到目前为止,我使用的所有 npm 模块都是使用 $ npm install --save <module_name>
安装的
为什么 --save-dev
用于 gulp 而不仅仅是 --save
? --save-dev
和--save
有什么区别?
【问题讨论】:
请问为什么投反对票?这个问题有什么问题? 我猜是因为:***.com/questions/27897038/why-need-npm-save-dev 看看***.com/questions/19223051/… 我相信有人(很可能)否决了您的问题,因为该问题已经存在(有答案)并且在发布此问题之前没有进行足够的研究。这是我的猜测 我的问题是为什么不只是 --save?有些不同。 【参考方案1】:--save
将包添加到您的依赖项列表(package.json 中的“依赖项”)。这是您的包运行所需的依赖项列表。这些是当用户从 npm 安装你的包并打算使用它时需要安装的依赖项。
--save-dev
将包添加到您的开发者依赖项列表(package.json 中的“devDependencies”)。这是您仅用于开发包所需的依赖项列表。例如 babel、gulp、测试框架等。
有关详细信息,请查看与此问题相关的前两个问题:
Grunt.js: What does -save-dev mean in npm install grunt --save-dev What is difference between --save and --save-dev?【讨论】:
【参考方案2】:这是一个重复的问题。答案可以在这里找到。 Grunt.js: What does -save-dev mean in npm install grunt --save-dev
从其他链接复制。
您可以在 package.json 文件中指出(至少)两种类型的包依赖项:
1) 使用您的模块所需的那些包列在“依赖项”属性下。使用 npm,您可以通过这种方式将这些依赖项添加到您的 package.json 文件中:
npm install --save packageName
2) 帮助开发您的模块所需的那些软件包列在“devDependencies”属性下。这些包对于其他人使用该模块不是必需的,但是如果他们想帮助开发该模块,则需要这些包。使用 npm,您可以通过这种方式将这些 devDependencies 添加到您的 package.json 文件中:
npm install --save-dev packageName
【讨论】:
以上是关于为啥 gulp 需要安装 --save-dev 而不仅仅是 --save的主要内容,如果未能解决你的问题,请参考以下文章