Promise.try
Promise.try(function() fn) -> Promise
Promise.attempt(function() fn) -> Promise
Запустите цепочку обещаний с помощью Promise.try. Любые синхронные исключения будут преобразованы в отклонения возвращенного обещания.
function getUserById(id) {
return Promise.try(function() {
if (typeof id !== "number") {
throw new Error("id must be a number");
}
return db.getUserById(id);
});
}
Теперь, если кто-то использует эту функцию, они смогут перехватывать все ошибки в своих обработчиках обещания .catch вместо того, чтобы обрабатывать как синхронные, так и асинхронные потоки исключений.
Для совместимости со старыми версиями ECMAScript предоставлен псевдоним Promise.attempt для Promise.try.
© 2013–2018 Petka Antonov
Licensed under the MIT License.
http://bluebirdjs.com/docs/api/promise.try.html