NPM คืออะไร

สำหรับการพัฒนา Application บน Node.js คำสั่ง npm มีส่วนสำคัญมากสำหรับเรา เพราะ npm มันคือ package manger command หรือตัวที่เราใช้ในการ ติดตั้ง อัพเดท ลบ หรือจัดการแพ็กเกจหรือโมดูลต่างๆ ที่เกี่ยวข้องกับ Node.js โดยเรามาดูคำสั่ง npm เบื้องต้นที่ใช้งานกันบ่อยๆ ครับ

แสดงเวอร์ชันของ npm

npm -v

เมื่อเริ่มต้นใช้งาน คือเมื่อรันคำสั่งแล้ว มันจะสร้าง package.json ซึ่งเป็นไฟล์ในการจัดการเก็บรายการแพ็กเกจหรือโมดูล รวมถึงรายละเอียดเกี่ยวกับโปรเจคของเรา

npm init -y

ตัวอย่างลักษณะโครงสร้างไฟล์ package.json

{
    "name": "myapp",
    "dependencies": {
      "package-name":"package-vesion" // เช่น "react": "^16.13.1"
    },
    "devDependencies": {
      "package-name":"package-vesion" // เช่น "typescript": "^3.8.3"
    }
  }

ติดตั้งแพ็กเกจ วิธีหาแพ็กเกจนอกจาก google ก็สามารถค้นหาได้ที่นี่ https://www.npmjs.com/browse/

npm install <package-name> // ติดตั้งภายในโปรเจค
npm install --save <package-name> หรือ npm install -S <package-name>  // ติดตั้งภายในโปรเจคและให้บันทึกลง dependencies ในไฟล์ package.json
npm install --save-dev <package-name> หรือ npm install -D <package-name> // ติดตั้งภายในโปรเจคและให้บันทึกลง devDependencies ในไฟล์ package.json
npm install --global <package-name> หรือ npm install -g <package-name> // ติดตั้งแบบ global

ถอนการติดตั้งและแพ็กเกจ

npm remove <package-name> // ลบเฉพาะภายในโปรเจค
npm remove -g <package-name> // ลบภายในเครื่อง

แสดงรายการแพ็กเกจทั้งหมดที่ติดตั้งไปแล้ว

npm list หรือ npm ls // แสดงรายการแพ็กเกจเฉพาะภายในโปรเจค
npm list -g // แสดงรายการแพ็กเกจทั้งหมดภายในเครื่อง
npm -g list --depth=0 // แสดงรายการแพ็กเกจแบบชั้นเดียว

อัพเดทแพ็กเกจ

npm update <package-name> // อัพเดทเฉพาะภายในโปรเจค
npm update -g <package-name> // อัพเดททั้งหมดภายในเครื่อง

คำสั่งรัน script ที่เราตั้งค่าไว้ภายในไฟล์ package.json ลักษณะจะเป็นดังนี้

{
    "name": "myapp",
    "scripts": {
      "command": "your-script"
    }
  }

ขอยกตัวอย่าง ถ้าเรากำหนด script ในไฟล์ package.json แบบนี้

{
    "name": "myapp",
    "scripts": {
      "mycommand": "echo \"This is the my script.\" "
    }
  }

รูปแบบคำสั่งเวลาเรียกใช้งานเราจะใช้ คำสั่งดังนี้

npm run-script <command> หรือ npm run <command>

// จากตัวอยากก็จะเรียกเป็น
npm run-script mycommand หรือ npm run mycommand

// ผลลัพธ์จะแสดงข้อความ "This is the my script."

ใช้สำหรับเคลียร์ cache

npm cache clean

ก็ขอจบบล็อกไวเพียงเท่านี้ หวังว่าคงทีประโยชน์ครับ