เพื่อตอบคำถามข้อใดข้อหนึ่งจำเป็นต้องมีการติดตั้งทั้งในระดับโลกและระดับท้องถิ่นเพื่อให้เครื่องมือทำงานได้
หากคุณพยายามเรียกใช้ng serve
แอปพลิเคชันที่ไม่มีการติดตั้งในเครื่องของ CLI (การติดตั้งทั่วโลกเท่านั้น) คุณจะได้รับข้อผิดพลาดต่อไปนี้
คุณต้องอยู่ในโครงการ Angular CLI เพื่อใช้คำสั่งบริการ
มันจะพิมพ์ข้อความนี้:
Please take the following steps to avoid issues:
"npm install --save-dev @angular/cli@latest"
รันnpm
คำสั่งนั้นเพื่ออัพเดต CLI แบบโลคัลและหลีกเลี่ยงคำเตือนที่คุณได้รับ
คำถามอื่น ๆ : ดูเหมือนว่าพวกเขาไม่จำเป็นต้องซิงค์ แต่อาจเป็นการดีที่สุดที่จะหลีกเลี่ยงพฤติกรรมที่ผิดปกติกับเครื่องมือหรือความไม่สอดคล้องกับรหัสที่เครื่องมือสร้างขึ้น
ทำไมเราต้องมีทั้งการติดตั้งทั่วโลกและการติดตั้งในเครื่อง?
จำเป็นต้องติดตั้งทั่วโลกเพื่อเริ่มแอปพลิเคชันใหม่ ng new <app-name>
คำสั่งทำงานโดยใช้การติดตั้งทั่วโลกของ CLI ที่จริงแล้วถ้าคุณพยายามเรียกใช้ng new
ขณะที่อยู่ภายในโครงสร้างโฟลเดอร์ของแอปพลิเคชัน CLI ที่มีอยู่คุณจะได้รับข้อผิดพลาดที่น่ารักนี้:
คุณไม่สามารถใช้new
คำสั่งในโครงการ Angular CLI
คำสั่งอื่น ๆ ที่สามารถเรียกใช้จากทั่วโลกติดตั้งกำลังng help
, ng get/set
กับ--global
ตัวเลือกng version
, ng doc
และng completion
และ
การติดตั้งภายในของ CLI จะใช้หลังจากสร้างแอปพลิเคชันแล้ว วิธีนี้เมื่อมีรุ่นใหม่ของ CLI ให้ใช้งานคุณสามารถอัปเดตการติดตั้งทั่วโลกของคุณและไม่มีผลกับการติดตั้งในเครื่อง สิ่งนี้ดีต่อความมั่นคงของโครงการ ส่วนใหญ่ng
คำสั่งเพียง แต่จะทำให้ความรู้สึกกับรุ่นท้องถิ่นเช่นlint
, build
และserve
อื่น ๆ
ตามreadmeของ CLI GitHub เพื่ออัพเดต CLI คุณต้องอัพเดตแพ็กเกจโกลบอลและโลคัล อย่างไรก็ตามฉันได้ใช้ CLI ซึ่งเวอร์ชันทั่วโลกและท้องถิ่นแตกต่างกันไปโดยไม่มีปัญหาใด ๆ หากฉันพบข้อผิดพลาดเกี่ยวกับการซิงค์ CLI ทั้งในระดับโลกและในระดับท้องถิ่นฉันจะโพสต์สิ่งนี้ที่นี่