npm,全名 Node Package Manager,套件管理工具,package.json 會記下你在項目中安裝的所有套件。
假設在項目中安裝 lodash
npm i --save lodash
這樣在 dependencies 中會出現:
如果修改了導入方式:
npm i --save-dev lodash
就會看到 lodash 跑到了 devDependencies 中:
官方解釋:
“dependencies”: Packages required by your application in production.
“devDependencies”: Packages that are only needed for local development and testing.
可以想像 dependencies 的組件是你的程式 build 出來之后發布版本仍然需要的組件,舉例來說,我需要 sass 套件將我的 sass 轉成 css,但是發布版本已經是 css 了,就不需要再有 sass 套件了。又或者我會用 babel 來把我的 ES6 語法轉為 ES5 ,這樣的轉換功能一樣只需要在我的開發環境之下,所以可以安裝在 devDependencies 就好。
在 Node v5.0.0 之后 --save 已經成為了預設指令,即 npm i --save lodash
可以寫為npm i lodash
即可。--save-dev
可以簡寫為-D
npm i --save-dev lodash
# 等同于
npm i -D lodash
Node 查看版本:
node -v
npm -v