我们有一个 Angular2 应用程序,我们在其中使用了一些第三方控件,即 IgniteUI/Infragistics IgGrid 和 PivotGrid 控件。应用程序的全局异常处理如下所示。
export class CustomErrorHandler implements ErrorHandler {
constructor(private _SessionService: SessionService)
{
}
handleError(error) {
console.log("Error occurred. " + error);
console.log("Stack Trace : " + error.stack);
}
}
应用程序中抛出的所有异常/错误都被上述错误处理程序捕获。但是对于某些特定情况,当数据中存在某些问题并且它与 PivotGrid 绑定时,它会使整个应用程序崩溃。异常被handleError() 事件内的全局错误处理程序捕获,但在该事件之后,整个应用程序崩溃并且用户无法使用。数据绑定时在 PivotGrid 内引发异常。
任何想法如何处理这种情况?
在 pivotgrid 中引发并导致应用程序崩溃的异常如下:-
TypeError: Cannot read property 'levelUniqueName' of null
at map (http://localhost:49928/js/IgniteUI/infragistics.lob.js:661:10848)
at e.(anonymous function).(anonymous function)._createTableView (http://localhost:49928/js/IgniteUI/infragistics.lob.js:661:11006)
at e.(anonymous function).(anonymous function)._createTableView (http://code.jquery.com/ui/1.11.1/jquery-ui.min.js:6:7983)
at e.(anonymous function).(anonymous function)._onGridUpdated (http://localhost:49928/js/IgniteUI/infragistics.lob.js:661:26726)
at e.(anonymous function).(anonymous function)._onGridUpdated (http://code.jquery.com/ui/1.11.1/jquery-ui.min.js:6:7983)
at Class.<anonymous> (http://localhost:49928/js/IgniteUI/infragistics.lob.js:661:9410)
at Class.dispatch (http://code.jquery.com/jquery-1.11.3.min.js:4:8549)
at Class.r.handle (http://code.jquery.com/jquery-1.11.3.min.js:4:5252)
at Object.trigger (http://code.jquery.com/jquery-1.11.3.min.js:4:7650)
at Class.<anonymous> (http://code.jquery.com/jquery-1.11.3.min.js:4:15517)