Should be a simple question, however I can find no documentation on how to do it.
Chaining a promise like this:
// Making a promise, no problem
let promise = new Promise((resolve, reject) => {
let data = {}; // do something
reject(data);
});
// First chain, no problem
promise.then(data => {
console.log('Success callback', data); // This will not be called
}).catch(err => {
console.log('Error callback', err); // This WILL be called
})
// Second chain, acts as resolved
.then(data => {
console.log('Level 2 success', data); // This WILL be called
}).catch(err => {
console.log('Level 2 error', err); // This will NOT be called
});
I understand that unless I pass on the rejection from the first catch
callback, then subsequent then
's will be handled as resolved.
So... how to call reject from within the catch function?