หากคุณใช้ Gulp รัน tasks ลองรัน gulp บนบรรทัดคำสั่ง แต่ได้ข้อผิดพลาด gulp: command not found?
ทำไมจึงเกิดขึ้น?
เพื่อรันแพ็กเกจบนบรรทัดคำสั่งจากไดเรกทอรีใดก็ได้ ต้องติดตั้งแพ็กเกจนั้นแบบ Global บนคอมพิวเตอร์
นี่คือวิธีแก้ไขสองวิธี:
ติดตั้ง gulp-cli แบบ Global
เพื่อรัน Gulp คุณต้องการสองอย่าง:
- Gulp CLI ต้องติดตั้งแบบ Global
- และ Gulp ต้องติดตั้งแบบ Local ในไดเรกทอรีของแต่ละโปรเจกต์ที่ใช้
ดังนั้น ก่อนติดตั้ง Gulp ในไดเรกทอรีโปรเจกต์ ต้องติดตั้ง Gulp CLI แบบ Global ก่อน โดยพิมพ์ npm install gulp-cli -g
จากนั้นจึงติดตั้ง Gulp ในไดเรกทอรีโปรเจกต์เฉพาะโดยพิมพ์ npm install gulp
ตรวจสอบว่า npm ติดตั้งในไดเรกทอรี /usr/local
ยังคงได้ข้อผิดพลาดแม้ติดตั้ง Gulp CLI แบบ Global แล้ว?
ปัญหาอาจมาจากไดเรกทอรี npm แบบ Global ถูกตั้งค่าที่ตำแหน่งผิด ไดเรกทอรี npm แบบ Global คือที่ที่แพ็กเกจติดตั้งเมื่อติดตั้งแบบ Global
คุณสามารถตรวจสอบได้โดยพิมพ์ npm root -g บนบรรทัดคำสั่ง
บน PC อาจเป็น: C:\Users\YOURNAME\AppData\Roaming\npm\node_modules
บน Mac ควรเป็นประมาณ: /usr/local/lib/node_modules/
สำหรับผู้ใช้ Mac หากคำสั่ง root คืนค่าไดเรกทอรีแบบ /Users/YOURNAME/node_modules จะทำให้เกิด error command not found
เพื่อแก้ไข ให้เปลี่ยน npm root folder โดยรัน: npm config set prefix /usr/local
จากนั้นคุณควรติดตั้ง Gulp CLI แบบ Global และ Gulp แบบ Local ได้แล้ว