ในการประชุม JSCONF ปี 2009 โปรแกรมเมอร์รุ่นใหม่ชื่อ Ryan Dahl แสดงให้ผู้คนเห็นว่าโครงการที่เขากำลังดำเนินการแพลตฟอร์มการทำงานของ JavaScript บนพื้นฐานของ Engine Google V8 ซึ่งให้ชุดของ Event Loops และ Low IO Application Programming Interfaces (APIs) ซึ่งแตกต่างจากแพลตฟอร์มฝั่งเซิร์ฟเวอร์อื่น ๆ JavaScript เกิดมาเพื่อเป็น IO ที่ขับเคลื่อนด้วยเหตุการณ์และโครงการนี้ช่วยลดความซับซ้อนของการเขียนแอพพลิเคชั่นที่ขับเคลื่อนด้วยเหตุการณ์อย่างมากดังนั้นจึงเติบโตขึ้นอย่างรวดเร็วและกลายเป็นที่นิยมด้วยความเร็วที่เหลือเชื่อและนำไปใช้กับโครงการจริง (แจ็ค: การแปลนี้ไม่น่าเชื่อถือข้อความต้นฉบับ: โครงการนี้ไม่เหมือนกับแพลตฟอร์ม JavaScript ฝั่งเซิร์ฟเวอร์อื่น ๆ ที่ I/O ดั้งเดิมทั้งหมดเป็นตัวขับเคลื่อนเหตุการณ์และไม่มีทางรอบ ๆ )
โครงการนี้มีชื่อว่า node.js ซึ่งนักพัฒนาใช้ในการเรียกมันว่าโหนด Node จัดเตรียมชุดเครื่องมือที่ไม่ปิดกั้นที่ขับเคลื่อนด้วยเหตุการณ์อย่างหมดจดเพื่อสร้างแอปพลิเคชันที่เกิดขึ้นพร้อมกันสูง
หมายเหตุ: โหนดช่วยให้คุณสามารถสร้างบริการเครือข่ายที่รวดเร็วและปรับขนาดได้อย่างง่ายดาย
นับตั้งแต่ได้รับการแนะนำโดย Ryan Dahl โหนดได้ดึงดูดความสนใจอย่างกว้างขวางจากอุตสาหกรรม พวกเขาเริ่มปรับใช้บริการเครือข่ายที่รวดเร็วและปรับขนาดได้ด้วยโหนด โหนดน่าสนใจมาก
ในอีกด้านหนึ่งเนื่องจาก JavaScript JavaScript เป็นภาษาการเขียนโปรแกรมที่ใช้กันอย่างแพร่หลายในโลกนี้ โปรแกรมเมอร์เว็บส่วนใหญ่ใช้ JavaScript ทางฝั่งเบราว์เซอร์และฝั่งเซิร์ฟเวอร์เป็นส่วนขยายที่เป็นธรรมชาติมาก
ในทางกลับกันเพราะโหนดนั้นเล็กและน่ารักชุดฟังก์ชั่นหลักของโหนดมีขนาดเล็กมากและ API ที่มีอยู่นั้นได้รับการปรับปรุงให้ดีที่สุดและลดความซับซ้อนให้น้อยที่สุดสำหรับนักพัฒนา เมื่อคุณต้องการสร้างแอปพลิเคชันที่ซับซ้อนมากขึ้นคุณเพียงแค่ต้องเลือกและติดตั้งโมดูลของบุคคลที่สามที่คุณชอบ
นอกจากนี้ยังมีเหตุผลว่าทำไมโหนดจึงน่าดึงดูดมันเป็นเรื่องง่ายที่จะเริ่มต้นคุณสามารถดาวน์โหลดและติดตั้งได้ในไม่กี่นาทีและเรียกใช้
โดยปกติคุณสามารถติดตั้งโหนดตามขั้นตอนในเว็บไซต์ทางการ (http://nodejs.org) ซึ่งรองรับ Windows, Linux, Macintosh และ Solaris
ติดตั้งโหนดบน Windows
โหนดรองรับ Windows ตั้งแต่เวอร์ชัน 0.6.0 ในการติดตั้งโหนดบน Windows เพียงดาวน์โหลด node-v*.msi จาก http://nodejs.org/#download จากนั้นดับเบิลคลิกที่จะเรียกใช้ จากนั้นคุณอาจพบกล่องโต้ตอบความปลอดภัยคล้ายกับรูปที่ 1-1
รูปที่ 1-1
คลิกปุ่ม "เรียกใช้" และหลังจากการดาวน์โหลดเสร็จสิ้นกล่องโต้ตอบความปลอดภัยอื่นจะปรากฏขึ้น (รูปที่ 1-2) เตือนคุณว่าคุณแน่ใจว่าการดำเนินการหรือไม่
รูปที่ 1-2
หากคุณเห็นด้วยตัวช่วยสร้างการติดตั้งโหนดจะปรากฏขึ้น (รูปที่ 1-3) คลิกถัดไปเพื่อเริ่มการติดตั้งโหนดและการติดตั้งจะแล้วเสร็จในเวลาอันสั้น! ดูรูปที่ 1-4
รูปที่ 1-3
รูปที่ 1-4
ติดตั้งบน Mac OS X
หากคุณใช้ Mac OS X คุณสามารถใช้ตัวช่วยสร้างการติดตั้งเพื่อติดตั้งโหนด ก่อนอื่นให้ไปที่ http://nodejs.org/#download เพื่อดาวน์โหลด node-v*.pkg หลังจากดาวน์โหลดดับเบิลคลิกเพื่อเรียกใช้ คุณจะเห็นกล่องโต้ตอบแรกของตัวช่วยสร้างการติดตั้งดูรูปที่ 1-5
รูปที่ 1-5
คลิก "ดำเนินการต่อ" เพื่อติดตั้งและตัวช่วยสร้างจะขอให้คุณป้อนรหัสผ่านของผู้ใช้ระบบ หลังจากยืนยันการติดตั้งจะเริ่มขึ้น หลังจากนั้นไม่นานโหนดจะถูกติดตั้งอีกครั้ง! ดูรูปที่ 1-6
รูปที่ 1-6
ติดตั้งด้วยซอร์สโค้ด
หากคุณใช้ระบบ UNIX คุณสามารถติดตั้งได้โดยรวบรวมซอร์สโค้ด ก่อนอื่นคุณต้องเลือกเวอร์ชันโหนดที่คุณต้องการติดตั้งจากนั้นดาวน์โหลดซอร์สโค้ดที่เกี่ยวข้องและสร้างติดตั้งและเรียกใช้โหนด
หมายเหตุ: โหนดอาศัยฐานรหัสบุคคลที่สามหลายแห่ง แต่โชคดีที่ส่วนใหญ่จะรวมอยู่ในแพ็คเกจการเปิดตัวโหนดแล้ว หากคุณเริ่มสร้างจากซอร์สโค้ดคุณต้องมีสองสิ่งต่อไปนี้:
1.Python (เวอร์ชัน 2.4 หรือสูงกว่า) - เครื่องมือสร้างที่ปล่อยออกมาด้วยโหนดต้องใช้สภาพแวดล้อม Python ในการรัน
2.LIBSSL -DEV - หากคุณวางแผนที่จะใช้การเข้ารหัส SSL/TLS คุณต้องติดตั้งสิ่งนี้ LIBSSL เป็นไลบรารีคลาสที่ใช้โดยเครื่องมือ OpenSSL ในระบบ Linux และ UNIX คุณสามารถใช้ Package Manager ของระบบเพื่อติดตั้งได้ LIBSSL ติดตั้งไว้ล่วงหน้าภายใต้ Mac OS X ดังนั้นหากคุณใช้ Mac OS X คุณมักจะไม่จำเป็นต้องติดตั้ง LIBSSL อีกต่อไป
เลือกเวอร์ชันโหนด
โดยปกติจะมีสองเวอร์ชันโหนดที่แตกต่างกันในการดาวน์โหลดบนเว็บไซต์อย่างเป็นทางการ nodejs.org: เวอร์ชันที่เสถียรและเวอร์ชันล่าสุด
สำหรับโหนดบิตหมายเลขเวอร์ชันขั้นต่ำแสดงถึงความเสถียรของรุ่นนี้เวอร์ชันเสถียรใช้ตัวเลขคู่ (เช่น 0.2, 0.4, 0.6) และรุ่นที่ไม่เสถียรใช้ตัวเลขคี่ (0.1, 0.3, 0.5, 0.7)
ไม่เพียง แต่เป็นเวอร์ชันที่ไม่เสถียรที่ไม่ต้องใช้งานได้ แต่ API อาจมีการเปลี่ยนแปลงในรุ่นต่อ ๆ ไปและ API ที่เปิดตัวในเวอร์ชันเสถียรจะไม่ถูกแก้ไข สำหรับแต่ละสาขาที่มีเสถียรภาพแพตช์ใหม่ไม่เพียง แต่รวมถึงการแก้ไขข้อผิดพลาด แต่ยังเปลี่ยน API ในเวอร์ชันที่ไม่ต้องใช้งาน
หากคุณไม่ต้องการทดสอบคุณสมบัติใหม่ในเวอร์ชันที่ไม่เสถียรล่าสุดคุณควรเลือกเวอร์ชันที่เสถียรล่าสุด เวอร์ชันที่ไม่เสถียรเป็นเหมือนสนามรบสำหรับทีม Node Core เพื่อทดสอบคุณสมบัติใหม่
แม้ว่าโครงการและ บริษัท ต่างๆจะใช้โหนดในผลิตภัณฑ์ของตนได้สำเร็จ (หน้าแรกของเว็บไซต์อย่างเป็นทางการแสดงขึ้น) แต่คุณอาจต้องเรียนรู้ที่จะทนต่อการเปลี่ยนแปลงของ API จากเวอร์ชันที่ไม่มั่นคงไปจนถึงเวอร์ชันที่เสถียร แน่นอนว่านี่คือราคาของการเรียนรู้เทคโนโลยีใหม่
ดาวน์โหลดซอร์สโค้ดโหนด
ตอนนี้คุณรู้แล้วว่าจะดาวน์โหลดเวอร์ชันใดจากนั้นไปที่เว็บไซต์อย่างเป็นทางการ http://nodejs.org เพื่อค้นหาแพ็คเกจ TAR ที่เกี่ยวข้องแล้วคัดลอกลิงค์ดาวน์โหลด หากคุณใช้ระบบ UNIX ระบบของคุณอาจติดตั้ง wget ซึ่งหมายความว่าคุณสามารถดาวน์โหลดได้ด้วยคำสั่งเชลล์:
การคัดลอกรหัสมีดังนี้:
$ wget http://nodejs.org/dist/v0.6.1/node-v0.6.12.tar.gz
หากคุณไม่ได้ติดตั้ง wget คุณอาจต้องใช้ Curl:
การคัดลอกรหัสมีดังนี้:
$ curl o http://nodejs.org/dist/v0.6.1/node-v0.6.12.tar.gz
หากคุณไม่มีเครื่องมือเหล่านี้ติดตั้งคุณต้องหาวิธีอื่นในการดาวน์โหลดแพ็คเกจ TAR ไปยังไดเรกทอรีท้องถิ่นของคุณ - เช่นผ่านเบราว์เซอร์หรือผ่านเครือข่ายท้องถิ่น
(ตัวอย่างที่เสถียรล่าสุดในหนังสือเล่มนี้เมื่อเขียน: 0.6.12)
สร้างโหนด
ตอนนี้เรามีซอร์สโค้ดแล้วเราสามารถใช้มันเพื่อสร้างไฟล์ที่เรียกใช้งานของโหนด ก่อนอื่นคุณต้องคลายซิปแพ็คเกจ TAR ที่คุณดาวน์โหลดก่อนหน้านี้:
การคัดลอกรหัสมีดังนี้:
$ tar xfz node-v0.6.12.tar.gz
จากนั้นป้อนไดเรกทอรีต้นฉบับ:
คัดลอกรหัสดังนี้: $ cd node-v0.6.12
การกำหนดค่า:
คัดลอกรหัสดังนี้: $./กำหนดค่า
ถ้าเป็นไปด้วยดีคุณจะเห็นพรอมต์เพื่อความสำเร็จ:
คัดลอกรหัสดังนี้: 'กำหนดค่า' สำเร็จแล้ว (9.278s)
จากนั้นคุณสามารถเริ่มรวบรวม:
การคัดลอกรหัสมีดังนี้:
$ make
หลังจากรวบรวมจะมีพรอมต์ต่อไปนี้:
การคัดลอกรหัสมีดังนี้:
สร้าง 'เสร็จแล้วสำเร็จ (0.734s)
ติดตั้งโหนด
เมื่อสร้างขึ้นให้ใช้คำสั่งต่อไปนี้เพื่อติดตั้งโหนด:
คัดลอกรหัสดังต่อไปนี้: $ Make Install
การดำเนินการนี้จะคัดลอกไฟล์ที่เรียกใช้งานโหนดไปยัง/ผู้ใช้/local/bin/node
หากคุณพบปัญหาการอนุญาตให้เพิ่ม sudo ก่อนคำสั่งและดำเนินการเป็นผู้ใช้รูท:
การคัดลอกรหัสมีดังนี้:
$ sudo make ติดตั้ง
เรียกใช้โหนด
ตอนนี้โหนดกำลังทำงานอยู่คุณสามารถสัมผัสกับอินเตอร์เฟสการโต้ตอบบรรทัดคำสั่งของ Node (CLI: อินเตอร์เฟสบรรทัดคำสั่ง) เพียงเรียกไฟล์ที่เรียกใช้งานโหนด:
การคัดลอกรหัสมีดังนี้:
$ node
การดำเนินการนี้จะเริ่มต้นอินเตอร์เฟสการโต้ตอบบรรทัดคำสั่งของโหนดและรอการป้อนข้อมูลของคุณ ป้อนคำสั่งต่อไปนี้เพื่อให้โหนดทำอะไร:
การคัดลอกรหัสมีดังนี้:
> console.log ('Hello World!');
สวัสดีโลก!
> ไม่ได้กำหนด
คุณยังสามารถเรียกใช้ไฟล์สคริปต์ JavaScript ตัวอย่างเช่นคุณสร้างไฟล์ที่เรียกว่า hello_world.js และมีเนื้อหาต่อไปนี้:
การคัดลอกรหัสมีดังนี้:
console.log ('Hello World!');
จากนั้นใช้ชื่อไฟล์ของสคริปต์นี้เป็นพารามิเตอร์พารามิเตอร์แรกเพื่อเรียกไฟล์ที่เรียกใช้งานโหนด:
การคัดลอกรหัสมีดังนี้:
$ node hello_world.js
สวัสดีโลก!
สุดท้ายใช้ Ctrl+D หรือ Ctrl+C เพื่อออกจากอินเตอร์เฟสบรรทัดคำสั่ง Node
เตรียมและใช้แพ็คเกจแพ็คเกจ Node
จนถึงตอนนี้คุณสามารถใช้คุณสมบัติภาษาและฟังก์ชั่นหลักของโหนดเองซึ่งเป็นเหตุผลว่าทำไมแพลตฟอร์มโปรแกรมส่วนใหญ่จึงมีระบบสำหรับการดาวน์โหลดการติดตั้งและการจัดการโมดูลของบุคคลที่สาม ในโหนดเราใช้ Node Package Manager (NPM: Node Package Manager)
NPM ประกอบด้วยสามส่วน: ฐานรหัสสำหรับการจัดเก็บแพ็คเกจบุคคลที่สามกลไกสำหรับการจัดการแพ็คเกจที่ติดตั้งในท้องถิ่นและมาตรฐานสำหรับการกำหนดพัสดุ NPM ให้บริการลงทะเบียนสาธารณะที่มีแพ็คเกจทั้งหมดที่เผยแพร่โดยทุกคนและจัดหาเครื่องมือบรรทัดคำสั่งเพื่อดาวน์โหลดติดตั้งและจัดการแพ็คเกจเหล่านี้ คุณสามารถกำหนดแพ็คเกจบุคคลที่สามอื่น ๆ ที่แพ็คเกจหรือแอปพลิเคชันของคุณจำเป็นต้องพึ่งพาตามมาตรฐานรูปแบบแพ็คเกจของโหนด
แม้ว่าคุณจะสามารถเริ่มใช้โหนดโดยไม่เข้าใจ NPM แต่หากคุณต้องการใช้แพ็คเกจของบุคคลที่สามคุณต้องเรียนรู้เพราะโหนดนั้นมี API ระดับต่ำเท่านั้น การใช้โมดูลบุคคลที่สามสามารถลดความซับซ้อนของการพัฒนาได้อย่างมากและไม่จำเป็นต้องเข้ารหัสด้วยตนเอง NPM ช่วยให้คุณสามารถดาวน์โหลดและใช้โมดูลใน Sandbox และคุณสามารถทดลองกับสิ่งที่คุณสนใจโดยไม่ต้องกังวลเกี่ยวกับการปนเปื้อนสภาพแวดล้อมของแพ็คเกจทั่วโลก
NPM และโหนดก่อนหน้านี้จำเป็นต้องติดตั้งอย่างอิสระ ตั้งแต่เวอร์ชัน 0.6.0 NPM ได้รวมอยู่ในแพ็คเกจการติดตั้งโหนด
ใช้ NPM เพื่อติดตั้งอัปเกรดและถอนการติดตั้งแพ็คเกจ
NPM นั้นทรงพลังมากและคุณสามารถใช้มันได้หลายวิธี ฐานรหัสของมันจัดการโมดูลสาธารณะทั้งหมดและคุณสามารถเข้าถึงได้ผ่าน http://search.npmjs.org ผู้เขียนโมดูลโอเพนซอร์สโหนดสามารถเผยแพร่โมดูลของเขาเองไปยัง NPM และอื่น ๆ สามารถดาวน์โหลดและติดตั้งโมดูลนี้ได้โดยใช้ชื่อโมดูลในคำอธิบายการติดตั้งแพ็คเกจ
ส่วนหนึ่งของเนื้อหานี้มีการดำเนินการทั่วไปสำหรับการติดตั้งและลบแพ็คเกจ การรู้ว่าสิ่งเหล่านี้เพียงพอที่จะให้คุณเริ่มจัดการแพ็คเกจบุคคลที่สามแอปพลิเคชันของคุณเองขึ้นอยู่กับ ถึงกระนั้นคุณต้องเข้าใจความแตกต่างระหว่างคำสั่งเหล่านี้ก่อนในโหมด "ทั่วโลก" และ "ท้องถิ่น" และวิธีการที่พวกเขาส่งผลกระทบต่อการพึ่งพาและการค้นหาโมดูล
โหมดโหมดทั่วโลกและท้องถิ่นของโมดูล NPM
มีสองโหมดหลักของการดำเนินการ NPM: ทั่วโลกและท้องถิ่น สองโหมดนี้จะส่งผลกระทบต่อโครงสร้างไดเรกทอรีของแพ็คเกจและลำดับที่โหนดโหลดแพ็คเกจ
โหมดท้องถิ่นเป็นโหมดการทำงานเริ่มต้นของ NPM ในโหมดนี้ NPM ทำงานเฉพาะในไดเรกทอรีการทำงานและจะไม่ทำให้เกิดการปรับเปลี่ยนทั่วทั้งระบบ โหมดนี้ช่วยให้คุณสามารถติดตั้งและทดสอบโมดูลในโปรแกรมโหนดโดยไม่ส่งผลกระทบต่อโปรแกรมโหนดอื่น ๆ ในคอมพิวเตอร์ของคุณ
โหมดทั่วโลกเหมาะสำหรับโมดูลสาธารณะที่จะใช้โดยหลายโปรแกรมและมีการโหลดทั่วโลกเสมอเช่นเครื่องมือบรรทัดคำสั่งซึ่งจะไม่ถูกใช้โดยตรงโดยแอปพลิเคชัน
หากคุณไม่ทราบว่าจะติดตั้งโมดูลโหมดใดคุณควรใช้โหมดท้องถิ่น หากผู้เขียนโมดูลต้องการโมดูลที่จะติดตั้งทั่วโลกเขามักจะชี้ให้เห็นในคำแนะนำการติดตั้ง
โหมดสากล
หากคุณใช้ไดเรกทอรีเริ่มต้นเมื่อคุณติดตั้งโหนดในโหมดส่วนกลาง NPM จะติดตั้งแพ็คเกจเป็น/usr/local/lib/node_modules หากคุณดำเนินการคำสั่งต่อไปนี้ NPM จะค้นหาและดาวน์โหลดเวอร์ชันล่าสุดชื่อ SAX และติดตั้งในไดเรกทอรี/USR/LOCAL/LIB/NODE_MODULES/SAX
คัดลอกรหัสดังนี้: $ npm ติดตั้ง G Sax
หมายเหตุ: หากผู้ใช้เชลล์ปัจจุบันของคุณไม่มีสิทธิ์เพียงพอคุณต้องใช้ผู้ใช้รูทเพื่อเข้าสู่ระบบหรือใช้ sudo เพื่อเรียกใช้คำสั่ง:
การคัดลอกรหัสมีดังนี้:
$ sudo npm ติดตั้ง g sax
จากนั้นเมื่อคุณต้องการโมดูล SAX ในสคริปต์โหนดของคุณให้ใช้คำสั่งต่อไปนี้เพื่อโหลด:
การคัดลอกรหัสมีดังนี้:
var sax = ต้องการ ('sax');
หากคุณยังไม่ได้ติดตั้ง SAX ในไดเรกทอรีแอปพลิเคชันในโหมดท้องถิ่นโหนดจะค้นหาโมดูลชื่อ SAX ในไดเรกทอรีการติดตั้งก่อนหน้านี้มิฉะนั้นเวอร์ชันท้องถิ่นจะถูกโหลดก่อน
โหมดเริ่มต้นคือโหมดท้องถิ่นดังนั้นคุณต้องเพิ่มค่าสถานะ -G หลังจากคำสั่ง NPM เพื่อเปิดใช้งานโหมดโกลบอล
โหมดท้องถิ่น
โหมดท้องถิ่นเป็นโหมดที่แนะนำเริ่มต้นสำหรับกลไกการพึ่งพาแพ็คเกจโหนด ในโหมดนี้ทุกอย่างที่ติดตั้งโดย NPM อยู่ในไดเรกทอรีการทำงานปัจจุบัน (ไดเรกทอรีรูทไม่มีข้อยกเว้น) โดยไม่ส่งผลกระทบต่อการตั้งค่าทั่วโลก กลไกนี้ช่วยให้คุณสามารถตั้งค่าโมดูลการพึ่งพาของแอปพลิเคชันและรุ่นของพวกเขาทีละคนโดยไม่ต้องกังวลเกี่ยวกับการปนเปื้อนพื้นที่โมดูลทั่วโลก ซึ่งหมายความว่าคุณสามารถมีแอปพลิเคชันสองแอปพลิเคชันที่ขึ้นอยู่กับโมดูลเดียวกันเวอร์ชันต่าง ๆ โดยไม่ขัดแย้งกัน
ในโหมดนี้ NPM ใช้ไดเรกทอรี Node_Modules ในไดเรกทอรีการทำงานปัจจุบันเพื่อจัดเก็บโมดูล ตัวอย่างเช่นไดเรกทอรีการทำงานปัจจุบันของคุณคือ/home/user/apps/my_app, NPM จะใช้/home/user/apps/my_app/node_modules เพื่อจัดเก็บโมดูลท้องถิ่นทั้งหมด ซึ่งหมายความว่าหากคุณใช้ชื่อโมดูลเพื่ออ้างถึงโมดูลในรหัสของคุณโหนดจะค้นหาในไดเรกทอรี node_modules ในท้องถิ่นก่อน หากไม่พบมันจะค้นหาไดเรกทอรี Global Node_Modules ลำดับความสำคัญของโมดูลท้องถิ่นนั้นสูงกว่าโมดูลทั่วโลกเสมอ
ติดตั้งโมดูล
ใช้คำสั่งต่อไปนี้เพื่อติดตั้งโมดูลเวอร์ชันล่าสุด:
การคัดลอกรหัสมีดังนี้:
$ npm ติดตั้ง <ชื่อแพ็คเกจ>
ตัวอย่างเช่นในการดาวน์โหลดและติดตั้งโมดูลเวอร์ชันล่าสุดชื่อ SAX คุณต้องตั้งค่าไดเรกทอรีรูทของแอปพลิเคชันของคุณเป็นไดเรกทอรีปัจจุบันจากนั้นป้อน: ป้อน:
การคัดลอกรหัสมีดังนี้:
$ npm ติดตั้งแซ็กโซโฟน
การดำเนินการนี้จะสร้างไดเรกทอรีย่อย Node_Modules (ถ้าไม่มีอยู่) ในไดเรกทอรีปัจจุบันจากนั้นติดตั้งโมดูล SAX ด้านล่าง
นอกจากนี้คุณยังสามารถเลือกติดตั้งเวอร์ชันเฉพาะผ่านคำสั่งต่อไปนี้:
การคัดลอกรหัสมีดังนี้:
$ npm ติดตั้ง <ชื่อแพ็คเกจ>@<เวอร์ชันสเปค>
ใช้หมายเลขเวอร์ชันที่ระบุเพื่อแทนที่ตัวยึดตำแหน่งในคำสั่ง ตัวอย่างเช่นในการดาวน์โหลดโมดูล SAX เวอร์ชัน 0.2.5 คุณจะต้องเรียกใช้:
การคัดลอกรหัสมีดังนี้:
$ npm ติดตั้ง [email protected]
ตัวยึดตำแหน่งยังสามารถแทนที่ด้วยช่วงเวอร์ชัน ตัวอย่างเช่นหากคุณต้องการติดตั้ง SAX Module 0.2 Branch เวอร์ชันล่าสุดคุณสามารถเรียกใช้:
การคัดลอกรหัสมีดังนี้:
$ npm <a href = "http://www.trevorturnbull.com/" rel = "external nofollow"> ไวอากร้าแคนาดาออนไลน์ </a> ติดตั้ง [email protected]
หรือติดตั้งเวอร์ชันล่าสุดด้วยหมายเลขเวอร์ชันน้อยกว่า 0.3:
การคัดลอกรหัสมีดังนี้:
$ npm ติดตั้ง sax@"<0.3"
คุณสามารถระบุช่วงเวอร์ชัน:
การคัดลอกรหัสมีดังนี้:
$ npm ติดตั้ง sax@"> = 0.1.0 <0.3.1"
ถอนการติดตั้งโมดูล
ใช้คำสั่งต่อไปนี้เพื่อถอนการติดตั้งโมดูลท้องถิ่น:
การคัดลอกรหัสมีดังนี้:
$ npm ถอนการติดตั้ง <ชื่อแพ็คเกจ>
หากคุณต้องการถอนการติดตั้งโมดูลส่วนกลางให้เพิ่มแท็ก -G:
การคัดลอกรหัสมีดังนี้:
$ npm ถอนการติดตั้ง -g <ชื่อแพ็คเกจ>
อัปเดตโมดูล
ใช้คำสั่งต่อไปนี้เพื่ออัปเดตโมดูลโลคัล:
การคัดลอกรหัสมีดังนี้:
$ NPM UPDATE <ชื่อแพ็คเกจ>
คำสั่งนี้จะพยายามรับแพ็คเกจโมดูลเวอร์ชันล่าสุดและอัปเดตเวอร์ชันท้องถิ่น หากไม่ได้ติดตั้งในเครื่องก็จะติดตั้ง หากสภาพแวดล้อมทั่วโลกจำเป็นต้องได้รับการอัปเดตคุณต้องเพิ่มแท็ก -G:
การคัดลอกรหัสมีดังนี้:
$ npm อัปเดต g <ชื่อแพ็คเกจ>
การใช้ไฟล์ที่ใช้งานได้
โมดูลสามารถมีไฟล์ที่ใช้งานได้อย่างน้อยหนึ่งไฟล์ หากคุณใช้การตั้งค่าไดเรกทอรีเริ่มต้นเพื่อติดตั้งโมดูลส่วนกลาง NPM จะติดตั้งไฟล์ที่เรียกใช้งานลงในไดเรกทอรี/USR/local/bin ซึ่งมักจะตั้งค่าเป็นส่วนหนึ่งของตัวแปรสภาพแวดล้อมเส้นทางระบบ หากคุณติดตั้งโมดูลนี้ในเครื่อง NPM จะวางไฟล์ที่ใช้งานได้ทั้งหมดไว้ในไดเรกทอรี./node_modules/.bin
จัดการกับการพึ่งพา
NPM ไม่เพียง แต่ติดตั้งแพ็คเกจโมดูลที่คุณต้องการ แต่ยังติดตั้งโมดูลอื่น ๆ ที่โมดูลเหล่านี้พึ่งพา ตัวอย่างเช่นหากคุณต้องการติดตั้งโมดูล A และ A ขึ้นอยู่กับโมดูล B และ C จากนั้นเมื่อคุณติดตั้ง A, B และ C จะติดตั้งใน./node_modules/a/node_modules ไดเร็กทอรี
ตัวอย่างเช่นคุณใช้คำสั่งต่อไปนี้เพื่อติดตั้งโมดูลที่เรียกว่านาโนในเครื่อง:
การคัดลอกรหัสมีดังนี้:
$ npm ติดตั้ง nano
ผลลัพธ์ของ NPM จะมีลักษณะเช่นนี้:
สิ่งนี้จะบอกคุณว่าโมดูลนาโนขึ้นอยู่กับโมดูลสองโมดูลขีดล่างและการร้องขอและยังชี้ให้เห็นเวอร์ชันที่ติดตั้ง หากตอนนี้คุณตรวจสอบไดเรกทอรี./node_modules/nano/node_modules คุณจะพบว่ามีการติดตั้งโมดูลทั้งสองนี้แล้ว:
การคัดลอกรหัสมีดังนี้:
$ ls node_modules/nano/node_modules
ขอขีดล่าง
การกำหนดการอ้างอิงโดยใช้ไฟล์ package.json
เมื่อคุณเริ่มเขียนแอปพลิเคชันคุณสามารถสร้างไฟล์ package.json ในไดเรกทอรีรูทแอปพลิเคชันเพื่อกำหนดข้อมูลเมตาของแอปพลิเคชันเช่นชื่อแอปพลิเคชันผู้แต่งที่อยู่พื้นฐานรหัสข้อมูลการติดต่อ ฯลฯ โมดูลภายนอกที่โปรแกรมขึ้นอยู่กับจะระบุไว้ในไฟล์นี้
หากคุณไม่ได้วางแผนที่จะเผยแพร่โปรแกรมไปยัง NPM คุณไม่จำเป็นต้องสร้างไฟล์นี้ อย่างไรก็ตามแม้ว่าโปรแกรมของคุณจะเป็นส่วนตัว แต่ไฟล์นี้มีประโยชน์จริง ๆ มันสามารถบอก NPM ถึงการพึ่งพาของแอปพลิเคชัน (หมายเหตุของนักแปล: ตัวอย่างเช่นหากคุณคัดลอกซอร์สโค้ดโครงการจากสภาพแวดล้อมการพัฒนาไปยังสภาพแวดล้อมการผลิตคุณสามารถติดตั้งการพึ่งพาทั้งหมดได้ในครั้งเดียวโดยการโทรติดตั้ง NPM NPM จะทำการดาวน์โหลดและติดตั้งโมดูลการพึ่งพาโดยอัตโนมัติผ่านความสัมพันธ์การพึ่งพา
package.json เป็นไฟล์รูปแบบ JSON ที่มีชุดของแอตทริบิวต์ แต่ถ้ามันเป็นเพียงการอธิบายการพึ่งพาของโปรแกรมจะใช้แอตทริบิวต์การพึ่งพาเพียงครั้งเดียวเท่านั้น ตัวอย่างเช่นแอปพลิเคชันที่เรียกว่า MyApp ขึ้นอยู่กับ SAX, NANO และคำขอโมดูลและจำเป็นต้องสร้าง package.JSON เท่านั้น:
การคัดลอกรหัสมีดังนี้:
-
"ชื่อ": "MyApp",
"เวอร์ชัน": "1.0.0"
"การพึ่งพา": {
"แซ็กโซโฟน": "0.3.x"
"นาโน": "*",
"คำขอ": "> 0.2.0"
-
-
คุณระบุแอปพลิเคชัน MyApp ซึ่งขึ้นอยู่กับ SAX เวอร์ชัน 0.3 รุ่นนาโนและโมดูลคำขอที่มีรุ่นสูงกว่า 0.2.0
หมายเหตุ: คุณอาจพบว่าหากคุณระบุฟิลด์ชื่อและเวอร์ชัน NPM จะไม่ทำงานซึ่งจะเกิดขึ้นใน NPM รุ่นเก่าเท่านั้นเนื่องจากตอนแรก NPM ใช้สำหรับโมดูลสาธารณะไม่ใช่โปรแกรมส่วนตัว
จากนั้นในไดเร็กทอรีรากแอปพลิเคชันดำเนินการ:
การคัดลอกรหัสมีดังนี้:
$ npm ติดตั้ง
ด้วยวิธีนี้ NPM จะวิเคราะห์การพึ่งพาและไดเรกทอรี Node_Modules ในเครื่องของคุณและดาวน์โหลดและติดตั้งโมดูลที่หายไปโดยอัตโนมัติ
นอกจากนี้คุณยังสามารถอัปเดตโมดูลท้องถิ่นทั้งหมดเป็นเวอร์ชันล่าสุดที่ตรงกับการตั้งค่าการพึ่งพาที่คุณกำหนดโดย:
การคัดลอกรหัสมีดังนี้:
การอัปเดต $ npm
ในความเป็นจริงคุณเพียงแค่ใช้วิธีการอัปเดตเพราะจะอนุญาตให้ NPM ได้รับโมดูลการพึ่งพาที่ขาดหายไปโดยอัตโนมัติ
สรุป
บทนี้เรียนรู้วิธีการติดตั้ง Node และ Node Package Manager (NPM) ตอนนี้คุณสามารถใช้ NPM เพื่อติดตั้งถอนการติดตั้งและลบโมดูลบุคคลที่สามใด ๆ ยังเรียนรู้วิธีการใช้ NPM เพื่อจัดการการพึ่งพาแอปพลิเคชันด้วยไฟล์ package.json
ตอนนี้คุณได้ติดตั้งโหนดและ NPM แล้วคุณสามารถลองใช้งานได้ อย่างไรก็ตามก่อนอื่นคุณต้องรู้ความรู้ที่เกี่ยวข้องเกี่ยวกับโหนดและไดรเวอร์เหตุการณ์ เนื้อหาเหล่านี้จะถูกนำเสนอในบทต่อไป