4.3 開發工具:nodemon、ESLint、Prettier#
nodemon:改檔自動重啟#
開發 API 時每次改程式碼都要手動 Ctrl+C 再 node app.js,很煩。nodemon 監看檔案變更,一存檔就自動重啟:
npm install -D nodemon
在 package.json 的 scripts 加上:
{
"scripts": {
"dev": "nodemon app.js"
}
}
之後開發就用:
npm run dev
Node 22+ 也可以用內建的
node --watch app.js,不用裝 nodemon。
ESLint:找出程式碼問題#
ESLint 靜態檢查程式碼:找出未使用的變數、可能的錯誤、不符合規範的寫法。
npm install -D eslint
npx eslint --init # 互動式設定,生成設定檔
檢查與自動修正:
npx eslint . # 檢查全部檔案
npx eslint . --fix # 自動修正可修的問題
在 scripts 加上:
{
"scripts": {
"lint": "eslint ."
}
}
Prettier:統一程式碼格式#
Prettier 自動格式化:縮排、引號、分行全部統一,團隊不再為格式吵架。
npm install -D prettier
建立設定檔 .prettierrc:
{
"semi": true,
"singleQuote": true,
"printWidth": 100
}
格式化:
{
"scripts": {
"format": "prettier --write .",
"check": "prettier --check ."
}
}
三個工具的分工#
| 工具 | 職責 | 時機 |
|---|---|---|
| nodemon | 改檔自動重啟 | 寫程式時持續跑 |
| ESLint | 找 bug、檢查品質 | 存檔時 + commit 前 |
| Prettier | 統一格式 | 存檔時 + commit 前 |
整合到工作流程#
最理想的狀態:這些檢查自動發生,不靠人的記性:
- 編輯器整合:裝 ESLint / Prettier 的 VS Code 套件,開啟「存檔時自動格式化」
- Git hooks:commit 前自動跑 lint(可用
husky+lint-staged) - CI 檢查:Pull Request 上自動跑 lint 與測試,不通過不能合併
原則:能自動化的就不要靠人肉。工具存在的意義是讓你專心寫程式,把「格式對不對、有沒有低級錯誤」交給機器。