npm 依賴和開發依賴

什麼時候一個 package 是一個依賴(dependency),什麼時候是一個開發依賴(dev dependency)? 當你使用 npm install <package-name> 命令來安裝一個 npm package 時,你是將它安裝為一個 依賴(dependency)。 該 package 會自動列在 package.json 文件的 dependencies 列表中(自 npm 5 版本起:之前需要手動指定 --save)。 當你添加 -D 標誌或 --save-dev 時,你是將它安裝為一個開發依賴(dev dependency),這會將它添加到 devDependencies 列表中。 開發依賴主要是一些僅用於開發的 package,在生產環境中是不需要的。例如測試 package、webpack 或 Babel。 當你進入生產環境時,如果目錄中有一個 package.json 文件,執行 npm install 就會安裝這些 package,因為 npm 假設這是一個開發佈署。 你需要設置 --production 標誌 (npm install --production) 來避免安裝這些開發依賴。