вы будете ловить отказы в любом месте в цепочке обещаний.
ды обещаниеreject()
обратный вызов называется, предупреждающее сообщение"Uncaught (в обещании)" появляется в консоли Chrome. Я не могу обернуть голову вокруг причины этого, ни как избавиться от этого.
var p = new Promise((resolve, reject) => {
setTimeout(() => {
var isItFulfilled = false
isItFulfilled ? resolve('!Resolved') : reject('!Rejected')
}, 1000)
})
p.then(result => console.log(result))
p.catch(error => console.log(error))
Предупреждение:
Редактировать:
Я узнал, что еслиonRejected
обработчик явно не предоставляется.then(onResolved, onRejected)
метод, JS автоматически предоставит неявный. Это выглядит так:(err) => throw err
, Сгенерированный автоматически обработчик выдаст свою очередь.
Ссылка:
Если IsCallable (onRejected) `естьложный, затем
ПозволятьonRejected быть "метатель».
http://www.ecma-international.org/ecma-262/6.0/index.html#sec-performpromisethen