บทความนี้สอนวิธีการแก้ไขปัญหากรณีที่ Nodemon ใช้ไม่ได้ ไม่ทำงาน คือ แก้ไขไฟล์โปรแกรม Node.js แล้วแต่ผลลัพธ์ไม่เปลี่ยนแปลง ซึ่งปัญหาดังกล่าวเป็นไปได้หลายสาเหตุ เช่น Nodemon ยังไม่ได้ติดตั้ง หรือติดตั้งไม่ถูกต้อง หรือ Nodemon ตั้งค่าไม่ถูกต้อง โดยมีรายละเอียดดังนี้
ตัวอย่าง แก้ไขปัญหา Nodemon ใช้ไม่ได้ ไม่ทำงาน
1. ติดตั้ง Nodemon ด้วยใหม่คำสั่ง
npm install -g nodemon
2. หากรันแล้วยังเป็นเหมือนเดิมให้ลบ folder ชื่อ node_modules ออกและติดตั้ง package ทั้งหมดใหม่ด้วยคำสั่งด้านล่าง และรีสตาร์ท Node.js
npm install
3. ตั้งค่า Nodemon โดยการแก้ไขไฟล์ package.json เพิ่มส่วนของ "dev" ลงใน “scripts” ตรงชื่อ app.js ให้เปลี่ยนเป็นชื่อไฟล์ที่ถูกต้องในการรัน
"scripts": {
"dev": "nodemon app.js --legacy-watch"
},
4. กรณีใช้ docker compose ให้เพิ่มคำสั่ง command: npm run dev ลงในไฟล์ docker-compose.yml
version: '3.8'
services:
app:
build:
context: app
dockerfile: Dockerfile
command: npm run dev
ports:
- '3000:3000'
depends_on:
- db
volumes:
- ./app/:/app/
- /app/node_modules