Windowï¼reportError() æ¹æ³
Window æ¥å£ç reportError() æ¹æ³å¯æ¨¡ææªæè·ç JavaScript å¼å¸¸ï¼åæ§å¶å°æå
¨å±äºä»¶å¤ç卿¥åé误ã
æ¤ç¹æ§ä¸»è¦ç¨äºèªå®ä¹äºä»¶ååæåè°å¤çåºãåºå¯ä»¥åæ¤ç¹æ§ä»¥æè·åè°ä»£ç ä¸ççé误ï¼å¹¶å°å ¶éæ°æåºè³é¡¶å±å¤çå¨ãè¿ç¡®ä¿äºä¸ä¸ªåè°ä¸åºç°çå¼å¸¸ä¸ä¼é»ç¢å ¶ä»åè°çå¤çï¼åæ¶ä¹ç¡®ä¿äºå¨é¡¶å±è°è¯æ¶ä»å¯æ¹ä¾¿å°è·åå æ è·è¸ªä¿¡æ¯ã
è¯æ³
reportError(throwable)
åæ°
è¿åå¼
æ ï¼undefinedï¼ã
å¼å¸¸
TypeError-
è°ç¨æ¹æ³æ¶æ²¡æä¼ å ¥ error å®åã
示ä¾
æ£æ¥ç¹æ§æ¯å¦å¯ç¨ï¼
if (typeof window.reportError === "function") {
// 彿°å·²å®ä¹
}
以ä¸ä»£ç å±ç¤ºäºå¦ä½åå»ºåæ¥åé误ï¼ä»¥åå¦ä½ä½¿ç¨ onerror äºä»¶å¤çå¨å±æ§æè
为 error äºä»¶æ·»å çå¬å¨æ¥æè·é误ã请注æï¼ä¸º onerror 设置çå¤çå¨å¿
é¡»è¿å true 以é²äºä»¶ç»§ç»ä¼ æã
const newError = new Error("Some error message", "someFile.js", 11);
window.reportError(newError);
window.onerror = (message, source, lineno, colno, error) => {
console.error(`æ¶æ¯ï¼${error.message}ï¼è¡å·ï¼${lineno}`);
return true;
};
window.addEventListener("error", (error) => {
console.error(error.filename);
});
// è¾åº
// > "æ¶æ¯ï¼Some error messageï¼è¡å·ï¼11"
// > "someFile.js"
è§è
| è§è |
|---|
| HTML > # runtime-script-errors > |
æµè§å¨å ¼å®¹æ§
åè§
WindowWorkerGlobalScope.reportError()Windowï¼erroräºä»¶WorkerGlobalScopeï¼erroräºä»¶HTMLElementï¼erroräºä»¶