Console.log และ debug ไม่พิมพ์ แต่คืนค่าที่ไม่ได้กำหนดเท่านั้น ทำไมถึงเป็นเช่นนั้น? ฉันพยายามติดตั้ง chrome ใหม่ แต่ก็ไม่ช่วย
นี่คือภาพหน้าจอจากหน้าหลักของโครเมี่ยมดังนั้นฟังก์ชั่นจึงไม่ได้ถูกนิยามใหม่ในบางรหัส
Console.log และ debug ไม่พิมพ์ แต่คืนค่าที่ไม่ได้กำหนดเท่านั้น ทำไมถึงเป็นเช่นนั้น? ฉันพยายามติดตั้ง chrome ใหม่ แต่ก็ไม่ช่วย
นี่คือภาพหน้าจอจากหน้าหลักของโครเมี่ยมดังนั้นฟังก์ชั่นจึงไม่ได้ถูกนิยามใหม่ในบางรหัส
คำตอบ:
คลิก "ระดับเริ่มต้น" และตรวจสอบให้แน่ใจว่าได้เลือก "ข้อมูล" แล้ว ตามค่าเริ่มต้นจะตั้งค่าให้แสดงข้อผิดพลาดและคำเตือนเท่านั้น
ฉันมาที่นี่ด้วยปัญหาเดียวกัน: /
เพื่อความสมบูรณ์: ใน Chrome รุ่นปัจจุบันการตั้งค่าจะไม่อยู่ด้านล่าง แต่จะพบได้เมื่อคลิกไอคอน "ตัวกรอง" ที่ด้านบนของแท็บคอนโซล (ไอคอนที่สองจากด้านซ้าย)
ณ วันนี้ UI ของเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ใน Google chrome ได้เปลี่ยนไปแล้วโดยที่เราเลือกระดับการบันทึกของคำสั่งบันทึกที่แสดงในคอนโซล มีระดับการบันทึกแบบหล่นลงข้างกล่องข้อความ "ตัวกรอง" ค่าที่สนับสนุนคือVerbose
, Info
, Warnings
และErrors
ด้วยInfo
การเป็นตัวเลือกเริ่มต้น
บันทึกใด ๆ ที่มีความรุนแรงเท่ากับหรือสูงกว่าจะได้รับการแสดงใน "คอนโซล" แท็บเช่นถ้าระดับการบันทึกที่เลือกInfo
แล้วทุกระดับมีการบันทึกInfo
,Warning
และError
จะได้รับการแสดงในคอนโซล
เมื่อฉันเปลี่ยนไปVerbose
แล้วของฉันconsole.debug
และconsole.log
งบเริ่มปรากฏขึ้นในคอนโซล จนถึงInfo
ระดับเวลาที่เลือกพวกเขาไม่ได้รับการแสดง
ฉันประสบปัญหาเดียวกัน วิธีแก้ปัญหาสำหรับฉันคือปิดการใช้งาน Firebug เพราะ Firebug สกัดกั้นบันทึกในพื้นหลังทำให้ไม่มีการบันทึกการแสดงในคอนโซล Chrome
ปัญหาเดียวกัน แต่ฉันเพิ่งล้างการตั้งค่าของฉัน ฉันเข้าสู่การตั้งค่า> การตั้งค่าและคลิก [กู้คืนค่าเริ่มต้นและโหลดซ้ำ] เพียงจำการตั้งค่าของคุณ
อาจมีตัวกรองบางตัวที่ใช้กับคอนโซล ลบออก
ตรวจสอบให้แน่ใจว่าอินพุต "ตัวกรอง" ถูกเว้นว่างไว้และไม่มีการเขียนโดยเจตนาหรือผิดพลาด ในกรณีของฉัน: P
ในกรณีของฉันคือ webpack ที่มี UglifyPlugin ทำงานด้วยdrop_console: true
ชุด
ฉันทำงานในไซต์ที่มีรหัส JS (หรืออื่น ๆ ) ป้องกันไม่ให้console.log
ทำงาน ( console.log
อาจถูกเขียนทับ) คุณสามารถทดสอบสิ่งนี้ได้โดยตรวจสอบว่าconsole.log
ทำงานในหน้าอื่น (เช่นนี้)
ฉันไม่มีเวลาตรวจสอบเพิ่มเติมในตอนนี้ดังนั้นฉันจึงเคยalert("something is: "+something)
ได้รับข้อมูลที่ฉันต้องการจากตัวอย่างที่ฉันต้องการเรียกใช้
console.log
เป็นตัวอย่างของเว็บไซต์ที่โดดเด่นที่ปิดใช้งาน
ในกรณีของฉันมันเป็นเพียงไฟล์ Javascript ที่เก็บไว้ในแคชเก่า หลังจากล้างแคชฉันเห็นบันทึกของฉัน
หากคุณเห็น (3 ข้อความถูกซ่อนโดยตัวกรองแสดงข้อความทั้งหมด) จากนั้นคลิกที่แสดงลิงก์ข้อความทั้งหมดในคอนโซลเครื่องมือ Chrome dev
เพราะหากตัวเลือกนี้เปิดใช้งานโดยไม่ได้ตั้งใจconsole.log("")
ข้อความจะปรากฏขึ้น แต่สิ่งนี้จะอยู่ในสถานะที่ซ่อนอยู่
คลิก " ระดับเริ่มต้น " ถัดจากตัวกรองและตรวจสอบให้แน่ใจว่าได้เลือก " ข้อมูล " แล้ว
โปรดดูภาพหน้าจอ:
ในกรณีของฉันเก็บบันทึกทำเคล็ดลับ ฉันทำทุกอย่างเพื่อแสดงบันทึก แต่มันหายไป ฉันตรวจสอบแล้วมันใช้งานได้
ในกรณีของฉันฉันไม่สามารถดูบันทึกได้เนื่องจากมีข้อความบางส่วนในฟิลด์ตัวกรองซึ่งทำให้ผลลัพธ์ของ console.log หายไป เมื่อเราลบข้อความในฟิลด์ตัวกรองแล้วควรจะปรากฏขึ้น
สิ่งนี้ใช้ได้สำหรับฉัน ในส่วนคอนโซลไปที่การตั้งค่าด้านบนขวา เลือกเก็บรักษาบันทึกและล็อก XMLHttpsRequests
บางครั้งสิ่งที่ง่ายที่สุดทำให้เราเดินทาง ...
พิมพ์console.log
คอนโซลและตรวจสอบว่าได้รับฟังก์ชันใดคืน ถ้าคุณเห็นƒ log() { [native code] }
มันเป็นอย่างอื่น หากคุณเห็นที่ƒ (){}
ใดที่หนึ่งลงบรรทัดฟังก์ชั่นเนทิฟ console.log ก็เปลี่ยน
ทำงานบนไซต์ของลูกค้าวันนี้และนั่นเป็นปัญหา หากเป็นกรณีนี้คุณสามารถคืนค่าฟังก์ชัน console.log ด้วยตนเองหรือใช้ console.dir () หรือ console.warn () แทน
ตรวจสอบว่ากล่องกรองว่างเปล่า
ดูว่ามีบางอย่างที่แสดงบนกล่องตัวกรองในคอนโซลมันหมายถึงบางสิ่งที่แทนที่สคริปต์ของคุณล้างกล่องตัวกรองและตรวจสอบอีกครั้ง ฉันกรณีของฉันนี้เป็นปัญหา
ตั้งแต่เดือนกรกฎาคม 2020 Chrome UI มีการเปลี่ยนแปลงอีกครั้งและระดับการบันทึกแบบเลื่อนลงดูเหมือนจะไม่ทำอะไรเลยในตอนนี้
แต่มีบานหน้าต่างใหม่ทางด้านซ้ายของบานหน้าต่างคอนโซลหลักซึ่งอาจตั้งค่าระดับการบันทึกที่ จำกัด โดยไม่ได้ตั้งใจ:
เลือกหมวดหมู่ด้านบน (ข้อความ) เพื่อเปิดเผยการบันทึกทั้งหมด:
แก้ไข: แม้ Chrome จะเพิ่มสิ่งต่าง ๆ ลงในกล่องตัวกรองซึ่งทำให้การบันทึกบางครั้งหายไปดังนั้นคุณต้องล้างกล่องตัวกรองมากเกินไป!
(กล่องตัวกรองอยู่ที่ด้านบนของทั้งสองรูปของฉันด้านบนภายใต้ "เงื่อนไขเครือข่าย" คุณจะเห็นว่ามีเนื้อหาบางส่วนเกี่ยวกับ "urlwebpack" ซึ่งฉันไม่ได้ใส่ไว้!)