ใน nodejs โมดูลคือไฟล์ js ที่ใช้เพื่อใช้ฟังก์ชันที่ระบุ โดยการแบ่งฟังก์ชันทั้งหมดออกเป็นโมดูล ขอบเขตของตัวแปรโกลบอลและฟังก์ชันที่กำหนดในแต่ละโมดูลยังถูกจำกัดไว้เฉพาะโมดูลนี้ ซึ่งใช้เพื่อจัดการโมดูลและฟังก์ชันเหล่านั้น การพึ่งพาและสามารถห่อหุ้มหลายโมดูลได้
สภาพแวดล้อมการทำงานของบทความนี้: ระบบ Windows 10, nodejs เวอร์ชัน 12.19.0, คอมพิวเตอร์ Dell G3
แยกความแตกต่างระหว่างแพ็คเกจและโมดูล: การใช้แพ็คเกจและโมดูลอย่างเหมาะสมจะทำให้โปรแกรมของคุณซ้ำซ้อนน้อยลง อ่านได้ชัดเจน และทำงานได้อย่างสมบูรณ์
แพ็คเกจถูกใช้เพื่อจัดการหลายโมดูลและการขึ้นต่อกันสามารถห่อหุ้มหลายโมดูลได้ ไดเร็กทอรีรากของแพ็คเกจต้องมีไฟล์ package.json ไฟล์ package.json ที่เป็นไปตามข้อกำหนด CommonJS โดยทั่วไปจะมีฟิลด์ต่อไปนี้:
ชื่อ: ชื่อแพ็คเกจ ชื่อแพ็คเกจไม่ซ้ำกันและมีได้เฉพาะตัวอักษรพิมพ์เล็ก ตัวเลข และขีดล่างเท่านั้น version: หมายเลขเวอร์ชันแพ็คเกจ คำอธิบาย: คำอธิบายแพ็คเกจ คีย์เวิร์ด: อาร์เรย์คีย์เวิร์ด ใช้สำหรับการค้นหา หน้าแรก: หน้าแรกของโครงการ ข้อบกพร่อง: ที่อยู่สำหรับส่งข้อบกพร่อง ใบอนุญาต: ใบอนุญาต ผู้ดูแล: อาร์เรย์ของผู้ดูแล ผู้มีส่วนร่วม: อาร์เรย์ของผู้มีส่วนร่วม ที่เก็บ: อาร์เรย์ของที่อยู่โฮสต์คลังสินค้าของโครงการ การขึ้นต่อกัน: การขึ้นต่อกันของแพ็คเกจไฟล์ package.json สามารถแก้ไขได้ด้วยตนเองหรือสร้างผ่านคำสั่ง npm init ป้อนคำสั่ง npm init ในเทอร์มินัลเพื่อสร้างแพ็กเกจที่มีไฟล์ package.json ป้อน npm init --yes โดยตรงเพื่อข้ามการตอบคำถามและสร้างไฟล์ package.json โดยตรงด้วยค่าเริ่มต้น
ติดตั้งแพ็คเกจผ่านคำสั่ง npm install xxx ตัวอย่างเช่น:
แพ็คเกจการติดตั้ง: npm install express แพ็คเกจอัพเดต: npm update express ลบแพ็คเกจ: npm ถอนการติดตั้ง expressค้นหาแพ็คเกจในชุมชน npm และติดตั้งผ่านคำสั่ง npm install module name ชื่อของแต่ละโมดูลไม่ซ้ำกันทั่วโลก
เราจำเป็นต้องเปรียบเทียบ JS ในเบราว์เซอร์กับ JS ใน Node.js:
ใน JavaScript เรามักจะแบ่งโค้ด JavaScript ออกเป็นไฟล์ js หลายไฟล์ จากนั้นจึงรวมและเรียกใช้ไฟล์ js เหล่านี้ในเบราว์เซอร์ ใน Node.js ฟังก์ชั่นทั้งหมดจะแบ่งออกเป็นโมดูล แต่ละโมดูลเป็นไฟล์ js และขอบเขตของตัวแปรโกลบอลและฟังก์ชันที่กำหนดไว้ในแต่ละโมดูลก็จำกัดอยู่ที่โมดูลนี้เท่านั้นที่สามารถส่งผ่านไปยังการใช้งานภายนอกได้Node.js จัดเตรียมโมดูลจำนวนมากอย่างเป็นทางการ ซึ่งแต่ละโมดูลใช้ฟังก์ชัน เช่น โมดูล fs สำหรับไฟล์ปฏิบัติการและระบบไฟล์ โมดูล http สำหรับการสร้างบริการ http และเส้นทางโมดูลสำหรับการประมวลผลเส้นทางไฟล์ เป็นต้น
เราสร้างโมดูลและส่งออกโดยใช้ module.exports
ไฟล์ myModule.js
ฟังก์ชั่น foo() { console.log("hello syl");} module.exports.foo = foo;ไฟล์ดัชนี.js
var สวัสดี = ต้องการ("./myModule.js");hello.foo();หมายเหตุ: โมดูลหลักถูกกำหนดไว้ในไดเร็กทอรี lib/ ของซอร์สโค้ด Node.js need() จะโหลดโมดูลหลักก่อนเสมอ ตัวอย่างเช่น: need('http') ส่งคืนโมดูล HTTP ในตัวเสมอ แม้ว่าจะมีไฟล์ที่มีชื่อเดียวกันก็ตาม
เพื่อให้การดำเนินงานของคุณง่ายขึ้น Node.js จัดเตรียมตัวแปรพิเศษ: ส่งออกเท่ากับ module.exports โค้ดสองบรรทัดนี้มีผลเหมือนกัน:
module.exports.foo = foo;exports.foo = foo;อธิบายกรณี:
// module.jsconsole.log('module', module)console.log('module.exports', module.exports)console.log('exports', ส่งออก)console.log(module.exports === ส่งออก) ;console.log("========================================="); ส่งออก = { a: 3, };console.log(ส่งออก);console.log(module.exports);console.log(ส่งออก === module.exports);need() รับค่าที่ส่งออกโดย module.exports คุณสามารถใช้ module.exports และส่งออกเพื่อส่งออกสมาชิกหลายราย คุณสามารถใช้ module.exports เพื่อส่งออกสมาชิกรายเดียวเท่านั้น
การเรียนรู้ที่แนะนำ: "วิดีโอสอน nodejs"
ข้างต้นคือเนื้อหาโดยละเอียดเกี่ยวกับสิ่งที่โมดูลและแพ็คเกจของ nodejs ทำ สำหรับข้อมูลเพิ่มเติม โปรดอ่านบทความอื่นๆ ที่เกี่ยวข้องบนเว็บไซต์นี้