npm 套件管理#

npm(Node Package Manager)是 Node.js 的官方套件管理工具,安裝 Node.js 時會一併安裝。它讓你可以輕鬆安裝、更新、移除第三方套件,以及管理專案的相依性。


1. 初始化專案#

在專案目錄下執行以下指令,產生 package.json 檔案:

1
npm init -y

-y 表示全部使用預設值。package.json 是專案的設定檔,記錄了專案名稱、版本、相依套件等資訊。

package.json 範例:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{
  "name": "my-project",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "start": "node index.js"
  },
  "dependencies": {}
}

2. 安裝套件#

1
npm install <套件名稱>

例如安裝 lodash

1
npm install lodash

安裝後,套件會放在 node_modules/ 目錄,並記錄在 package.jsondependencies


3. 開發依賴(devDependencies)#

僅在開發階段使用的套件(如測試工具),用 --save-dev 安裝:

1
npm install nodemon --save-dev

這些套件會記錄在 devDependencies,不會包含在正式環境部署中。


4. 使用已安裝的套件#

1
2
3
4
5
6
const _ = require("lodash");

const numbers = [1, 2, 3, 4, 5];
console.log(_.sum(numbers));    // 15
console.log(_.max(numbers));    // 5
console.log(_.reverse(numbers));// [5, 4, 3, 2, 1]

5. npm scripts#

package.jsonscripts 區塊可以定義常用指令:

1
2
3
4
5
6
{
  "scripts": {
    "start": "node index.js",
    "dev": "nodemon index.js"
  }
}

執行方式:

1
2
npm run start
npm run dev

nodemon 會監聽檔案變動並自動重啟伺服器,非常適合開發階段使用。


6. 重要指令整理#

指令說明
npm init -y初始化專案
npm install <pkg>安裝套件
npm install <pkg> --save-dev安裝開發依賴
npm uninstall <pkg>移除套件
npm install根據 package.json 安裝所有依賴
npm run <script>執行自訂指令
npm list列出已安裝套件

7. .gitignore#

node_modules/ 目錄通常不加入版本控制,在 .gitignore 加入:

node_modules/

其他人取得專案後,執行 npm install 即可還原所有依賴。


Reference#