แก้จุดบกพร่องวิชวลแบบกําหนดเองของ Power BI
บทความนี้อธิบายขั้นตอนพื้นฐานบางอย่างในการดีบักที่คุณสามารถใช้เมื่อพัฒนาวิชวลของคุณ หลังจากอ่านบทความนี้ คุณควรสามารถใช้วิธีการต่อไปนี้เพื่อดีบักวิชวลของคุณ:
แทรกจุดสั่งหยุด
JavaScript ทั้งหมดของวิชวลจะถูกโหลดใหม่ทุกครั้งที่มีการอัปเดตวิชวล ดังนั้นจุดสั่งหยุดใด ๆ ที่คุณเพิ่มจะหายไปเมื่อมีการรีเฟรชดีบักวิชวล เนื่องจากเป็นวิธีการแก้ไข ให้ใช้ debugger
คําสั่ง ในรหัสของคุณ ขอแนะนําให้ปิดการโหลดอัตโนมัติในขณะที่ใช้ debugger
ในรหัสของคุณ
นี่คือตัวอย่างของวิธีการใช้debugger
คําสั่ง ในวิธีการอัปเดตของคุณ
public update(options: VisualUpdateOptions) {
console.log('Visual update', options);
debugger;
this.target.innerHTML = `<p>Update count: <em>${(this.updateCount</em></p>`;
}
ข้อยกเว้นการจับ
เมื่อทํางานกับวิชวลของคุณ คุณจะสังเกตเห็นว่าข้อผิดพลาดทั้งหมด 'ถูกใช้ไป' โดยบริการของ Power BI นี่คือคุณลักษณะที่จงใจของ Power BI ซึ่งจะป้องกันไม่ให้การแสดงผลด้วยภาพที่ไม่เหมาะสมทําให้แอปทั้งหมดไม่เสถียร
เนื่องจากเป็นวิธีการแก้ไข ให้เพิ่มรหัสเพื่อจับและบันทึกข้อยกเว้นของคุณ หรือตั้งค่าตัวแก้ไขจุดบกพร่องของคุณเพื่อแบ่งข้อยกเว้นที่ถูกจับ
ข้อยกเว้นรายการบันทึกด้วยตกแต่ง
หากต้องการบันทึกข้อยกเว้นในวิชวล Power BI ของคุณ คุณจําเป็นต้องกําหนดตกแต่งการบันทึกข้อยกเว้น เมื่อต้องการทําเช่นนี้ ให้เพิ่มรหัสต่อไปนี้ลงในวิชวลของคุณ:
export function logExceptions(): MethodDecorator {
return function (target: Object, propertyKey: string, descriptor: TypedPropertyDescriptor<any>): TypedPropertyDescriptor<any> {
return {
value: function () {
try {
return descriptor.value.apply(this, arguments);
} catch (e) {
console.error(e);
throw e;
}
}
}
}
}
คุณสามารถใช้ตกแต่งนี้บนฟังก์ชันใด ๆ เพื่อดูการบันทึกข้อผิดพลาดดังนี้
@logExceptions()
public update(options: VisualUpdateOptions) {
แบ่งข้อยกเว้น
คุณยังสามารถตั้งค่าเบราว์เซอร์เพื่อแบ่งข้อยกเว้นที่ถูกจับได้ การหยุดการหยุดการทํางานของโค้ดที่มีข้อผิดพลาดเกิดขึ้นและช่วยให้คุณสามารถดีบักได้
เปิด เครื่องมือ สําหรับนักพัฒนา (F12)
ไปที่แท็บแหล่งที่มา
เลือกไอคอน หยุดชั่วคราวบนข้อยกเว้น (สัญลักษณ์หยุดด้วย สัญลักษณ์หยุดชั่วคราว )
เลือก หยุดชั่วคราวบนข้อยกเว้นที่ถูกจับ
เนื้อหาที่เกี่ยวข้อง
มีคำถามเพิ่มเติมหรือไม่? ลองใช้ชุมชน Power BI