npm install 中--save和--save-dev的區別

        表面上的區別是--save 會把依賴包名稱添加到 package.json 文件 dependencies 鍵下,--save-dev 則添加到 package.json 文件 devDependencies 鍵下,node

        它們真正的區別是,npm本身的文檔說dependencies是運行時依賴,devDependencies是開發時的依賴,即devDependencies 下列出的模塊,是咱們開發時用的,好比 咱們安裝 js的壓縮包gulp-uglify 時,咱們採用的是 「npm install –save-dev gulp-uglify 」命令安裝,由於咱們在發佈後用不到它,而只是在咱們開發纔用到它。dependencies 下的模塊,則是咱們發佈後還須要依賴的模塊,譬如像jQuery庫或者Angular框架相似的,咱們在開發完後後確定還要依賴它們,不然就運行不了。npm

        正常使用npm install時,會下載dependencies和devDependencies中的模塊,當使用npm install –production或者註明NODE_ENV變量值爲production時,只會下載dependencies中的模塊。json

總體功能比較  gulp

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-devui

  • 會把module包安裝到node_modules目錄彙總
  • 會修改package.json,將模塊名和版本號添加到devDependencies部分
  • 以後運行npm install 命令時,會自動安裝module包
  • 以後運行npm install --production或者註明NODE_ENV變量值爲production時,不會自動安裝msbuild到node_modules目錄中,便是在線上環境並不會進行安裝。

首先,--save和--save-dev能夠省掉咱們手動修改package.json文件的步驟。咱們使用的一些打包工具、非項目必須依賴的都放在devDependencies中。ci

相關文章
相關標籤/搜索