ค้นหาเว็บไซต์

javascript - Webpack - ขยายคลาส - ไม่สามารถอ่านคุณสมบัติ prototype ของ undefined


ฉันกำลังย้ายโครงการ Angular-CLI SystemJS ของเราไปยังเวอร์ชัน Webpack ล่าสุด ตอนนี้ฉันกำลังเจอข้อผิดพลาดที่มีชื่อเสียง

Uncaught TypeError: Cannot read property 'prototype' of undefined

ดูเพิ่มเติมได้ที่: https://github.com/Microsoft/TypeScript/wiki/FAQ#why-am-i-getting-typeerror-cannot-read-property-prototype-of-undefined-in-__extends-

อย่างไรก็ตาม เมื่อฉันตรวจสอบ main.bundle.js คลาสฐานของฉันถูกกำหนดประมาณบรรทัดที่ 40000 และคลาสลูกของฉันที่บรรทัด 90000 แต่ฉันยังได้รับข้อผิดพลาดนี้ มีอะไรอีกที่ฉันสามารถตรวจสอบได้บ้าง?

คำตอบ #1

มันเกิดขึ้นเหมือนกันกับฉัน ในที่สุดก็มีการพึ่งพาแบบวนซ้ำในโค้ดของฉันซึ่งระบบไม่ได้แจ้งเตือน และ webpack ก็แสดงข้อความที่ทำให้เข้าใจผิด

การดีบักไม่สามารถช่วยฉันได้เพราะฉันมีโมดูลมากมายและฉันเสียร่องรอย ในที่สุดแทนที่จะนำเข้า 'shared' หรือ 'core' ฉันได้แยกมันออกเป็น shared/menu, shared/icon, core/session และอื่น ๆ

นี่ทำลายการพึ่งพาที่แปลกทั้งหมดและเริ่มทำงานได้ค่อนข้างดี

คำตอบ #2

ฉันเคยมีปัญหานี้เมื่ออัปเดต angular-cli สำหรับฉัน มันเป็นความล้มเหลวของการขึ้นต่อกัน ลองหยุดชั่วคราวเมื่อมีข้อยกเว้นและตรวจสอบข้อยกเว้นอย่างละเอียด แล้วดูว่ามีข้อยกเว้นอื่นที่มีข้อความข้อยกเว้นที่เข้าใจได้หรือไม่ ถ้าคุณยังไม่ได้ลองวิธีนั้น

นอกจากนี้ให้แน่ใจว่าทับทุกอย่างเมื่อทำขั้นตอน ng init เพื่อให้แน่ใจว่าไฟล์การตั้งค่าทั้งหมดได้รับการอัปเดตด้วย

ปัญหาเหล่านั้นคือปัญหาที่ฉันเจอเมื่ออัปเดต หวังว่าจะเป็นประโยชน์