NPM 是 Node Package Manager 的簡稱,用來存取所有使用到的套件。
如果已經下載過 Node.js 就可以直接安裝 npm 不用另外下載。
安裝 left-pad
今天假設 npm 已經安裝完成了,我要嘗試在 npm 中安裝一個 left-pad 套件。
在終端機輸入npm install left-pad --save
。
--save
是為了要讓系統紀錄我們所下載套件,將會透過package.json檔案來紀錄,後面會再說明。
引用left-pad
require 相關的用法在另外一篇文章模組化 (Module):require 和 export有嘗試過,可以參考。
這邊直接針對情境輸入:
var leftPad = require(left-pad)
npm 的檔案
在安裝 npm 時會有相對應的資料及跟檔案產生,比較需要注意的是node_modules資料夾以及package.json檔案,相關的作用如下:
- node_modules資料夾:存取所有安裝的套件
- package.json檔案:紀錄安裝過哪些套件
因為兩者紀錄的東西不同,如果把node_modules資料夾直接上傳到 github 做版本控制,佔用的檔案容量太大了,所以可以只紀錄我們使用的套件名稱,也就是package.json檔案在做的事情,把package.json上傳到 github 就可以讓其他人知道程式使用了哪些套件,讓他們在各自的本機端安裝他們還沒擁有的套件了。
當我們拿到別人的package.json檔案,我們可以使用npm install
指令,系統會直接下載package.json檔案中我們還沒有的套件,一鍵安裝呀~厲害!
package.json存什麼
記錄一下package.json檔案裡面存取的資料,有哪一些是比較常會使用到的,先放一下我的package.json檔案內容:
main
:入口程式,最主要的那一支主程式dependencies
:使用到的套件跟它的版本script
:存取下什麼指令,會做什麼動作,例如上圖中的 script:當我在終端機下npm run test
指令時,會執行echo \"Error: no test specified\" && exit 1
,實際執行樣子: