jQuery.Deferred.exceptionHook()Возвращает: Error
Описание: Обрабатывает ошибки, возникающие в Deferred.
-
добавлено в версии: 3.0jQuery.Deferred.exceptionHook()
- Этот метод не принимает аргументы.
Этот API вызывается каждый раз, когда внутри Deferred возникает ошибка. По умолчанию он предупреждает только об ошибках, которые с большей вероятностью вызваны ошибками программиста, а не логикой приложения. К ним относятся такие ошибки, как SyntaxError или ReferenceError.
Функция принимает два параметра: первый — возникшая ошибка, а второй, необязательный параметр — «фиктивная» ошибка, созданная до вызова обработчика, чтобы была доступна трассировка стека до асинхронного барьера. Эта вторая ошибка предоставляется только в том случае, если определен jQuery.Deferred.getErrorHook; подробнее см. документацию этого API.
Пример
// These usually indicate a programmer mistake during development;
// warn about them ASAP rather than swallowing them by default.
var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
// If `jQuery.Deferred.getErrorHook` is defined, `asyncError` is an error
// captured before the async barrier to get the original error cause
// which may otherwise be hidden.
jQuery.Deferred.exceptionHook = function( error, asyncError ) {
if ( error && rerrorNames.test( error.name ) ) {
MyLoggingLibrary.log(
"jQuery.Deferred exception",
error,
asyncError
);
}
};