Promise链式调用 终止或取消
Promise回调分两种方法,then成功,catch失败
let promise = new Promise(function(resolve, reject){ resolve('第一次成功') }) promise.then(function(val) { // 两种方法意思都代表报错,【中断下一步,直接报错】
//第一种方法 throw new error()
// 第二种方法
return Promise.reject()
}).then(function(val) { console.log('被跳过的方法') }).catch(function(val) { console.log('返回失败') })
第三种方法有点粗暴,但也是目前看来可解决的可行办法
let promise = new Promise(function(resolve, reject){ resolve('第一次成功') }) promise.then(function(val) { //第三种方法 return new Promise(()=>{}) }).catch(function(val) { console.log('返回失败') }).then(function(val) { console.log('被跳过的方法') })
前两种如果链式调用最后以失败结尾的话是可行的,如果以成功结尾就会出问题,第三种方法是直接阻断性,讲进程转到新的Promise
目前只想到三种方法,但本人认为这不是最好的解决办法,后续如果后小伙伴发现更好的办法可以评论哦