ES6 Promise-3
Error Handling in Promise
by Po-Jung Chen
JavaScript
/**
* Error Handling in Promise
**/
function waitASeconds(seconds){
return new Promise((resolve, reject) => {
if (seconds > 3){
reject('seconds is bigger then 3')
}
setTimeout(function(){
seconds++
resolve(seconds)
},1000)
})
}
waitASeconds(0)
.then((seconds => {
console.log('In first .then', seconds)
return waitASeconds(seconds)
}))
.then((seconds => {
console.log('In second .then', seconds)
return waitASeconds(seconds)
}))
.then((seconds => {
console.log('In third .then', seconds)
return waitASeconds(seconds)
}))
.then((seconds => {
console.log('In forth .then', seconds)
return waitASeconds(seconds)
}))
.then((seconds => {
console.log('In fifth .then', seconds)
return waitASeconds(seconds)
}))
.catch((error) => {
console.warn(error)
})