npm install 时--save-dev和--save的区别
npm install 時--save-dev和--save的區別
package.json中兩個字段含義簡介
一直在使用npm包管理器,對于npm install module --save-dev 和 npm install module --save這兩個的區別做了一些淺析的理解:
dependencies
dependencies屬性被聲明在一個簡單的對象中,用來控制包名在一定的版本范圍內,版本范圍是一個字符串,可以被一個或多個空格分割。dependencied也可以被指定為一個壓縮包地址或者一個 git URL 地址。
不要把測試工具或transpilers轉義器(babel, webpack, gulp, postcss...)寫到dependencies中。 (這些應該寫到devDependencies)配置中,因為在別的項目中npm install 該包的時候會去下載dependencies中的依賴。
devDependencies
如果你的包被別人依賴或者安裝時,在對方主項目中進行npm install便不會安裝依賴包中的devDependencies中的npm包,所以如果你的項目中依賴的一些包不是在使用該項目時必須進行安裝的,那就將包放在devDependencies中。
****整體功能比較****
npm install module:
- 會把module包安裝到node_modules目錄中
- 不會修改package.json
- 之后運行npm install 命令時,不會自動安裝module包
npm install module --save
- 會把module包安裝到node_modules目錄匯總
- 會修改package.json,將模塊名和版本號添加到dependencies部分
- 之后運行npm install 命令時,會自動安裝module包
- 之后運行npm install --production或者注明NODE_ENV變量值為production時,會自動安裝 module到node_modules目錄中,即是在線上環境運行時會將包安裝
npm install module --save-dev
- 會把module包安裝到node_modules目錄匯總
- 會修改package.json,將模塊名和版本號添加到devDependencies部分
- 之后運行npm install 命令時,會自動安裝module包
- 之后運行npm install --production或者注明NODE_ENV變量值為production時,不會自動安裝msbuild到node_modules目錄中,即是在線上環境并不會進行安裝。
首先,--save和--save-dev可以省掉我們手動修改package.json文件的步驟。我們使用的一些打包工具、非項目必須依賴的都放在devDependencies中。
總結
以上是生活随笔為你收集整理的npm install 时--save-dev和--save的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue项目构建
- 下一篇: UML建模——用例图(Use Case