我想知道YUI3是否提供了尝试捕获错误功能的任何方法,在捕获错误之后,我们可以显示一些自定义错误警报,同时在服务器端记录错误,并显示错误异常和其他详细信息。 / p>
此外,如果yui3中没有此功能,那么所有框架都需要使用它来执行此操作,并且所有框架都与YUI兼容。
答案 0 :(得分:0)
我不知道YUI3提供了开箱即用的内容。
您可以将问题分成两部分:
您可以使用try / catch块包装代码,也可以使用全局错误处理程序。看起来YUI3还没有直接处理这个问题(http://yuilibrary.com/projects/yui3/ticket/2528067),但处理它不应该太难,你只需要测试浏览器差异。
您应该能够使用Y.IO将错误数据发送回服务器。看起来你得到了errorMsg,url,lineNumber,所以你可以把它们发送回服务器:
YUI().use("io-base",function(Y){
window.onerror = function(errorMsg, url, lineNumber){
Y.io("/errorHandler.php", {
data: {
errorMsg: errorMsg,
url: url,
lineNumber: lineNumber
}
});
alert("Sorry, something bad happened");
};
console.log("handler registered");
//now trigger an error
a.b.c="banana";
});
这似乎适用于此:http://jsfiddle.net/J83LW/
我会给您留下自定义提醒,我在这里留下了一个提醒,作为处理此事件的基本示例