1. 程式人生 > >package.json中devDependencies與dependencies的區別

package.json中devDependencies與dependencies的區別

install 安裝插件 route develop all 我們 插件 npm安裝 .json

前言:之前一直不懂既然都是項目的依賴,為什麽要分成兩個部分,devDependencies和dependencies,有什麽區別?

安裝方式

我們在通過npm安裝插件或庫時,有三種方式:

  • npm install:將插件安裝到項目,但不寫package.json(不推薦,這樣最終需要手動添加)
  • npm install --save:將插件安裝進項目,並寫入package.json的dependencies中
  • npm install --save-dev:將插件安裝進項目,並寫入package.json的devDependencies中

很明顯,--save表示保存到package.json中(默認為dependencies),-dev表示保存在package.json的devDependencies中

區別

dev是develop的縮寫,即表示開發模式,所以:

devDependencies保存的依賴是只用於開發環境,不用於生產環境;

dependencies保存的依賴用於生產環境。

生產環境與開發環境

所謂開發環境,就是指開發階段,比如webpack,gulp這些工具,都只是在開發階段需要,一旦項目真正投入使用,便不再依賴這些插件,所以將其安裝在devDependencies即可;

生產環境,則表示項目真正投入使用時,此時仍然需要依賴的插件則需要安裝在dependencies中,比如vue,vue-router,jQuery這些,dependencies中沒有這些插件,項目真實使用時就會出錯。

package.json中devDependencies與dependencies的區別