ไม่พบ angular.min.js.map มันคืออะไรกันแน่?


322

เมื่อฉันโหลดหน้าและตรวจสอบคอนโซล Chrome ฉันพบข้อผิดพลาดเหล่านี้: ป้อนคำอธิบายรูปภาพที่นี่

ไฟล์แผนที่คืออะไรในเชิงมุม?

ฉันอ้างอิง angular.min.js แต่ไม่ใช่ angular.min.js.map ฉันกำลังใช้รีลีส 1.2 rc angular และฉันเพิ่งเริ่มเห็นข้อผิดพลาดเหล่านี้เมื่อฉันเปลี่ยนไปใช้รีลีสนี้

ERRORS:
GET http://localhost:44786/Scripts/angular-route.min.js.map 404 (Not Found)       :44786/Scripts/angular-route.min.js.map:1
GET http://localhost:44786/Scripts/angular-animate.min.js.map 404 (Not Found) :44786/Scripts/angular-animate.min.js.map:1
GET http://localhost:44786/Scripts/angular-resource.min.js.map 404 (Not Found) :44786/Scripts/angular-resource.min.js.map:1
GET http://localhost:44786/Scripts/angular.min.js.map 404 (Not Found) :44786/Scripts/angular.min.js.map:1

6
ฉันไม่สามารถอ่านภาพของคุณ แต่ฉันพบสิ่งนี้: html5rocks.com/th/tutorials/developertools/sourcemaps
ninMonkey

1
อ่า .. ดังนั้นดูเหมือนว่านี่ไม่ใช่เหตุการณ์พิเศษเชิงมุม ... ขอให้ฉันอ่านก่อน .. ขอบคุณมาก
raberana

1
เฮ้ลิงคุณสามารถตอบคำถามที่ว่า .. คุณมีสิทธิ ..
raberana

คำตอบ:


385

ดังที่ eaon21 และ monkey กล่าวว่าไฟล์แผนที่ต้นฉบับนั้นจะแปลงรหัส minified ให้เป็นเวอร์ชั่นที่ไม่มีการแก้ไขสำหรับการดีบัก

คุณสามารถค้นหาไฟล์ .map ที่นี่ เพียงเพิ่มเข้าไปในไดเรกทอรีเดียวกับไฟล์ js ที่ย่อขนาดแล้วมันจะหยุดบ่น เหตุผลที่พวกเขาได้รับคือ

/*
//@ sourceMappingURL=angular.min.js.map
*/

ในตอนท้ายของ angular.min.js หากคุณไม่ต้องการเพิ่มไฟล์. map คุณสามารถลบบรรทัดเหล่านั้นออกและมันจะหยุดการดึงข้อมูล แต่ถ้าคุณวางแผนที่จะทำการดีบั๊กมันเป็นการดีเสมอที่จะเชื่อมโยงแผนที่ต้นทางเสมอ


58
คุณไม่จำเป็นต้องลบบรรทัดออกเนื่องจากไฟล์. map สามารถดึงข้อมูลได้โดยเปิดคอนโซลนักพัฒนาซอฟต์แวร์ :)
NicoJuicy

4
จริง แต่คำถามเดิมเกี่ยวกับข้อผิดพลาดที่ปรากฏในเครื่องมือ dev นอกจากนี้การลด 404s ที่ไม่จำเป็นในบันทึกเซิร์ฟเวอร์
Jussi Kosunen

1
ตามฉันมันไม่ได้เกี่ยวกับบันทึกเซิร์ฟเวอร์ แต่เกี่ยวกับข้อผิดพลาดของโครเมี่ยมที่เขาได้รับ ฉันต้องยอมรับมันจะสร้างบันทึกเซิร์ฟเวอร์และแสดงความคิดเห็นของคุณถูกต้อง;)
NicoJuicy

หากคุณมีไฟล์หลายไฟล์เช่น bootstrap.css, angular-messages.min.js, angular-route.min.js เป็นต้นแม้กระทั่งไฟล์เหล่านั้นจะมีsourceMappingURLอยู่ที่ส่วนท้ายของแต่ละไฟล์เหล่านั้น การลบบรรทัดนั้นในแต่ละไฟล์เหล่านั้นจะเป็นการกำจัดข้อความผิดพลาดที่น่ารำคาญในคอนโซลนักพัฒนาซอฟต์แวร์
Devner

1
ในเบราว์เซอร์ Safari ปัญหาการระบุข้อผิดพลาด JS: [ข้อผิดพลาด] ไม่สามารถโหลดทรัพยากร: เซิร์ฟเวอร์ตอบกลับด้วยสถานะ 404 (ไม่พบ) (angular.min.js.map, บรรทัด 0) ขอบคุณที่ให้ลิงค์ไฟล์
Sinto

105

ลิงนั้นถูกต้องอ้างอิงจากลิง

โดยพื้นฐานแล้วเป็นวิธีการแมปไฟล์ที่รวมกัน / ย่อกลับไปเป็นสถานะที่ไม่สร้าง เมื่อคุณสร้างเพื่อการผลิตพร้อมกับการย่อและรวมไฟล์ JavaScript ของคุณคุณจะสร้างแผนที่แหล่งที่เก็บข้อมูลเกี่ยวกับไฟล์ต้นฉบับ เมื่อคุณสอบถามหมายเลขบรรทัดและคอลัมน์ที่แน่นอนใน JavaScript ที่สร้างขึ้นของคุณคุณสามารถค้นหาในแผนที่ต้นทางซึ่งส่งคืนตำแหน่งเดิม

ฉันไม่แน่ใจว่าเป็นความผิดพลาดของเชิงมุมหรือไม่ที่ไม่มีการสร้างไฟล์แผนที่ แต่คุณสามารถปิดไฟล์แผนที่ต้นฉบับได้โดยยกเลิกการเลือกตัวเลือกนี้ในการตั้งค่าคอนโซลของ Chrome

ป้อนคำอธิบายรูปภาพที่นี่


13
+1 สำหรับการตั้งค่าคอนโซล Chrome ดีกว่าการแก้ไขซอร์สหรือต้องดาวน์โหลดไฟล์แม็พเมื่อไม่จำเป็น
Jeremy Ferguson

4
+1 สำหรับเรื่องนี้ในอีกหนึ่งปีต่อมา ไชโย ช่างเป็นความลึกลับที่เกิดขึ้นจริง!
bob.mazzo

1
ในโครเมี่ยมเปิดการตั้งค่าโต้ตอบโดย: กด F12 เพื่อเปิดDeveloper Tools> คลิกที่ปุ่มตั้งค่าที่มุมขวาบนของDeveloper Tools
Tho

มีการตั้งค่าที่คล้ายกันสำหรับซาฟารีหรือไม่?
user1872384
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.