เครื่องมือสำหรับนักพัฒนา Chrome: สคริปต์ html ว่างเปล่า (ในแหล่งที่มา) บทแนะนำการดีบัก


93

ฉันกำลังทำแบบฝึกหัดการดีบัก C hromeโดยใช้ NetBeans และ Google Chrome ดูเหมือนว่าทุกอย่างรวมถึงส่วนขยายจะทำงานได้อย่างถูกต้อง แต่เมื่อฉันไปที่ส่วนUse the Debuggerฉันไม่เห็นโค้ด html เพื่อแทรกเบรกพอยต์

หลังจากเลือกตรวจสอบป๊อปอัปบนเบราว์เซอร์จะเปิดขึ้นในคอนโซลโดยไม่แสดงอะไรองค์ประกอบจะแสดง popup.html พร้อมกับรูปภาพ เมื่อฉันไปที่ Sources ไฟล์ popup.html สามารถเปิดได้ แต่บรรทัดเดียวคือบรรทัดที่ 1 ว่างเปล่า ถ้าฉันเปิดไฟล์ js ไฟล์ js จะอยู่ที่นั่นและสามารถแก้ไขได้ (แตกปลาย)

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

การติดตาม: เมื่อเข้าlocation.reload(true)สู่พรอมต์คอนโซลไฟล์ popup.html จะปรากฏเป็น Source! ทำไม? ไม่มีความเห็น.

ฉันหวังว่านี่จะช่วยใครบางคนได้ตลอดทั้งวันที่ฉันใช้เวลาสะดุด


5
location.reload (จริง) ทำงานให้ฉัน
WillB3

ใช่ แต่จะโหลดหน้าเว็บซ้ำและสูญเสียการโต้ตอบใด ๆ ที่คุณอาจมีบนหน้าก่อนที่จะเปิดตัวแก้ไขข้อบกพร่อง
Peter Brand

ฉันควรเขียน "location.reload (true)"
ที่ไหน

2
ยังคงประสบปัญหาในปี 2019!
Aamir Rizwan

เหตุการณ์นี้เกิดขึ้นใน Chrome เวอร์ชันล่าสุดตุลาคม 2019 แต่เคล็ดลับ location.reload (true) ไม่โหลดอะไรเลย อนึ่งหน้าต่างต้นทางจะแสดงเฉพาะบรรทัดหมายเลข 1 แต่ไม่มีอะไรอื่น
Howard Brown

คำตอบ:


55

สิ่งนี้ดูเหมือนจะเป็นปัญหาที่ทราบแล้วกับ Chromium DevTools โดยพื้นฐานแล้ว HTML และเนื้อหาอื่น ๆ ที่ไม่ใช่สคริปต์จะถูกล้างไปแล้วก่อนที่ DevTools จะเปิดขึ้นและไม่มีวิธีที่เชื่อถือได้ในการนำกลับคืน การรีเฟรชหน้าด้วย DevTools จะเป็นการ "แก้ไข" ปัญหา


4
ตกลง - ฉันมีปัญหาและการแก้ไขนี้อาจล้าสมัย (สำหรับปัญหาที่เหมือนกันก่อนหน้านี้) หรือไม่ได้ผล
Dan Nissenbaum

3
ฉันก็มีปัญหาเดียวกัน การรีเฟรชหน้าเว็บไม่สามารถแก้ปัญหาได้
MH

17
คุณสามารถใช้งานได้โดยปิดเครื่องมือสำหรับนักพัฒนาและเปิดขึ้นมาใหม่อีกครั้งโดยใช้ตัวเลือกการตรวจสอบองค์ประกอบ มันใช้ได้กับฉัน
Vishal

7
ยังคงดำเนินต่อไปในเดือนธันวาคม 2017!
Peter Brand

7
ข้อบกพร่องยังคงอยู่ - พฤษภาคม 2019
Chris Rogers

53

ในกรณีของฉันคำสั่งช่วยคือ

  1. ปิดแท็บว่างในแหล่งข้อมูล
  2. ปิดเครื่องมือ dev
  3. เปิดเครื่องมือ dev
  4. เปิดแท็บในแหล่งที่มา (ยังคงว่างเปล่า)
  5. รีเฟรชหน้า

1
ใครจะรู้ว่านี่จะเป็นการแก้ไขที่เชื่อถือได้ แต่ครั้งนี้ได้ผล! 😁
James Hill

1
ผู้ชายฉันมองหา "การแก้ไข" นี้มาตลอด
Jordec

2
ฉันไม่สามารถ. เชื่อ. มัน ... ปี ของ. ความเจ็บปวด ... แก้ไขได้ ใน. อัน. ทันที. ขอขอบคุณ.
egmfrs

24

ฉันมีปัญหานี้และเพิ่งพบว่าการปิดใช้งาน "เปิดใช้งานแผนที่แหล่งที่มาของ Javascript" จากหน้าต่างการตั้งค่าตัวตรวจสอบ (F1) สามารถแก้ไขได้

ฉันสร้าง js.map ของฉันใหม่เปิดใช้งานการตั้งค่าอีกครั้งและแหล่งที่มายังคงมีอยู่

ดังนั้นฉันคิดว่าปัญหาของฉันคือฉันกำลังให้บริการ js ที่ไม่มีการปิดกั้น (การตั้งค่า dev) แต่แผนที่ (สร้างขึ้นสำหรับการตั้งค่า prod) ยังคงอยู่ที่นั่นและล้าสมัย


4
ปิด chrome แล้วเปิดใหม่หลังจากเปลี่ยนการตั้งค่าด้วย!
Nateous

17

ในกรณีของฉันฉันไม่สามารถเข้าถึงคอนโซลได้เนื่องจากแท็บนี้แสดงหน้าว่างด้วย วิธีแก้ปัญหาของฉันคือใช้ CTRL + SHIFT + I ร่วมกับหน้าจอดีบักเกอร์ว่างในโฟกัสจากนั้นพิมพ์parent.location.reload(true)ในคอนโซลของตัวแก้ไขจุดบกพร่องป๊อปอัป


2
ดังในความคิดเห็นของ WillB ด้านบนการโหลดหน้าเว็บซ้ำและสูญเสียการโต้ตอบใด ๆ ที่คุณอาจมีบนหน้าก่อนที่จะเปิดตัวดีบักเกอร์
Peter Brand

สุดยอด! สิ่งนี้ได้ผลสำหรับฉันหลังจากต่อสู้ 2 ชั่วโมง
Zeeshan Adil

ฉันไม่รู้ว่า parent.location.reload หมายถึงอะไร แต่มันช่วยแก้ปัญหาของฉันได้หลังจากรีสตาร์ท Chrome / รีเฟรชฮาร์ด / ล้างข้อมูลแคช Chrome หลายครั้ง! ขอบคุณ!
beluga

ดีใจที่ช่วยได้ มันโหลดหน้าต่างหลัก (หน้าต่างว่างที่คุณพิมพ์ CTRL + SHIFT + I) จากหน้าต่างลูก
Ikenna Anthony Okafor

5

ในกรณีของฉันมีส่วนขยายใน chrome ทำให้ดีบักเกอร์ทำให้หน้าดัชนีว่างเปล่าภายใต้ส่วน "ไม่มีโดเมน" ของดีบักเกอร์ หลังจากปิดใช้งานส่วนขยายที่ไม่จำเป็นทั้งหมดใน chrome แล้วโปรแกรมแก้ไขจุดบกพร่องจะแสดงแหล่งที่มาที่ถูกต้องอีกครั้ง


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

5
ฉันคงไม่เห็นด้วยกับคำว่า "ไร้ค่า" อย่างน้อยคุณก็รู้จักตรวจสอบปลั๊กอิน
Brett Drake

นี่เป็นปัญหาของฉัน - ในกรณีของฉันฉันได้ติดตั้งส่วนขยาย UltraSurf Unblock VPN แล้ว การเปิดหน้าแก้ไขข้อบกพร่องภายในเครื่องในหน้าต่างที่ไม่ระบุตัวตนจะทำให้หน้านั้นขึ้นมาทันที ช่วงเวลา "durrrr" ที่ฉันต้องยอมรับ :( ฮ่าฮ่า!
IfElseTryCatch

การใช้โหมดไม่ระบุตัวตนแก้ไขให้ฉัน
Petah

4

Dev Tools (F12) -> หน้าต่างการตั้งค่าตัวตรวจสอบ (F1) -> คืนค่าเริ่มต้นและโหลดใหม่ [ปุ่มที่ด้านล่าง] ใช้งานได้สำหรับฉัน!


2

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

หากคุณได้รับหน้า html ว่างในโปรแกรมดีบัก Chromium WebTools ให้ดูจาวาสคริปต์ของคุณให้ดีเพื่อให้แน่ใจว่ามันไม่ได้ทำอะไรแปลก ๆ


1
นี่ดูเหมือนจะเป็นสิ่งที่ทำให้เกิดปัญหาสำหรับฉันเช่นกัน ในกรณีของฉันฉันมีข้อมูลอ้างอิง jquery ที่ไม่ดี $ ('inputid') ตรงข้ามกับ $ ('# inputid')
Vincent

2

ฉันแก้ไขปัญหาโดยใช้เซสชันใหม่ล่าสุดที่มีอาร์กิวเมนต์บรรทัดคำสั่ง "--user-data-dir" และปิดใช้งาน "เปิดใช้งานแผนที่แหล่งที่มาของ Javascript" รหัสของฉันแสดงได้ดีในดีบักเกอร์ Firefox ดูเหมือนว่าเกิดจากข้อบกพร่องของ Chrome


1

ผมมีปัญหาเดียวกัน. แม้แต่การรีเฟรชหน้าเว็บก็ไม่ได้ผล

การchrome://helpรีเฟรชเบราว์เซอร์ + การรีสตาร์ทใช้งานได้สำหรับฉัน

คุณสามารถอัปเดต Chrome ผ่านเมนูได้เช่นกัน:

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


0

ในกรณีของฉันมันเกิดขึ้นอย่างกะทันหันหลังจากฉันติดมัลแวร์และฉันรีเซ็ตเบราว์เซอร์ของฉัน - ลบแคช / appdata

วิธีแก้ไข: ลบส่วนขยายที่อาจส่งผลต่อ Js ในกรณีของฉัน

ฉันลบ / ปิดการใช้งานส่วนขยายด้านล่างและใช้งานได้ https://chrome.google.com/webstore/detail/quick-javascript-switcher/geddoclleiomckbhadiaipdggiiccfje?hl=th

แปลกเพราะก่อนที่ฉันจะล้างส่วนเสริมนั้นโดยไม่มีปัญหาฉันคิดว่ามันเหมือน CPR ในหัวใจ :)


0

ในกรณีของฉันฉันมีเบราว์เซอร์ซิงค์ที่ทำงานอยู่สองสามวัน ฉันเด้งอึกและแก้ไขปัญหาของฉัน


0

ฉันมีปัญหานี้เช่นกันเมื่อฉันมีไฟล์ java-script ขนาดใหญ่ฉันมีบรรทัดนี้

                points.push({
                    location: new google.maps.LatLng(46.5376919, 4.5425704),
                    date : "5/8/2017 5:11:00 PM",
                    free : true
                });

เป็นรอบและนับ 3000 รายการดังนั้นไฟล์จึงมีขนาดใหญ่ขึ้นในสคริปต์และไฟล์ว่างเปล่าในแหล่งที่มาของ Chrome (ฉันคิดว่าฉันมีข้อ จำกัด บางอย่าง)

หลังจากทำให้ไฟล์เล็กลงโดยการลบออกถึง 100 รายการมันก็ใช้ได้ดี


0

ฉันมีปัญหาเดียวกันกับที่เอกสาร HTML ของฉันว่างเปล่าในแท็บแหล่งที่มา ฉันลองแก้ไขสองสามวิธีที่แนะนำที่นี่ แต่ไม่ได้ผล ข้อเสนอแนะนี้ทำให้สคริปต์ในเครื่องทั้งหมดหายไป สิ่งเดียวที่ใช้ได้ผลสำหรับฉันคือจากหน้าต่างตัวตรวจสอบกดปุ่ม F5 เครดิตสำหรับคำตอบ SOนี้

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