npm install 、npm install --save 和 npm install --save-dev的區(qū)別介紹
相同點
三者都會本地安裝包到項目的node_modules目錄中
區(qū)別
區(qū)別在于對項目package.json的修改,npm install不會修改package.json,而后兩者會將依賴添加進package.json,后兩者的區(qū)別請看下文循序漸進。
指定依賴包
指定包取決于你的項目,你需要在package.json 文件中列出你需要使用的包,有兩種包可以選擇:
- “dependencies”: 這些包都是你的應用程序在生產(chǎn)環(huán)境中所需要的。
- “devDepedencies”:這些包只是在開發(fā)和測試中需要的。
手動編輯package.json文件
你可以手動編輯你的package.json。你需要在包的dependencies 對象中創(chuàng)建一個屬性用來指出你需要添加的依賴。
例如下面的項目中,在主要生產(chǎn)環(huán)境中使用包my_dep的版本1.0.0,而在在開發(fā)環(huán)境中使用包 my_test_framework 的3.1.0版本。
{
"name": "my_package",
"version": "1.0.0",
"dependencies": {
"my_dep": "^1.0.0"
},
"devDependencies" : {
"my_test_framework": "^3.1.0"
}
}--save 和--save-dev下載標簽
- 他們表面上的區(qū)別是--save 會把依賴包名稱添加到 package.json 文件 dependencies 鍵下,--save-dev 則添加到 package.json 文件 devDependencies 鍵下.
- dependencies是運行時依賴,devDependencies是開發(fā)時的依賴。即devDependencies 下列出的模塊,是我們開發(fā)時用的
比如 我們安裝 js的壓縮包gulp-uglify 時,我們采用的是 “npm install gulp-uglify --save-dev”命令安裝,因為我們在發(fā)布后用不到它,而只是在我們開發(fā)才用到它。dependencies 下的模塊,則是我們發(fā)布后還需要依賴的模塊,譬如像jQuery庫或者Angular框架類似的,我們在開發(fā)完后后肯定還要依賴它們,否則就運行不了。
補充:正常使用npm install時,會下載dependencies和devDependencies中的模塊,當使用npm install --production或者注明NODE_ENV變量值為production時,只會下載dependencies中的模塊。
到此這篇關(guān)于npm install 、npm install --save 和 npm install --save-dev的區(qū)別的文章就介紹到這了,更多相關(guān)npm install --save和npm install --save-dev區(qū)別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaScript ECMA-262-3 深入解析.第三章.this
在這篇文章里,我們將討論跟執(zhí)行上下文直接相關(guān)的更多細節(jié)。討論的主題就是this關(guān)鍵字2011-09-09
bootstrap的3級菜單樣式,支持母版頁保留打開狀態(tài)實現(xiàn)方法
下面小編就為大家?guī)硪黄猙ootstrap的3級菜單樣式,支持母版頁保留打開狀態(tài)實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-11-11
JavaScript實現(xiàn)復制文章自動添加版權(quán)
自己辛辛苦苦寫的文章,輕易就被別人復制-粘貼去了,是不是很傷心呢?小編今天給大家整理了兩個方法,讓別人復制自己的文章時,自動在文章的結(jié)尾添加自己的版權(quán)信息。2016-08-08

