Separat opfangelse af undtagelser i promises i JavaScript
I then kan du kun angive en håndteringsfunktion
for undtagelsessituationer ved at sende null i stedet for den første
parameter:
promise.then(
null,
function(error) {
console.log(error);
}
);
I sådanne tilfælde er det praktisk at bruge den korte
syntaks via metoden catch:
promise.catch(
function(error) {
console.log(error);
}
);
Omskriv følgende kode ved hjælp af metoden catch:
let promise = new Promise(function(resolve, reject) {
setTimeout(function() {
let isError = false;
if (!isError) {
resolve('success');
} else {
reject(new Error('error'));
}
}, 3000);
});
promise.then(
res => console.log(res),
err => console.log(err.message),
);