Javascript js承诺-如何结束“;然后";如果条件满足则执行,如果不满足则继续下一步
我承诺使用1Javascript js承诺-如何结束“;然后";如果条件满足则执行,如果不满足则继续下一步,javascript,promise,es6-promise,Javascript,Promise,Es6 Promise,我承诺使用1.then()方法,我希望将其分成更小的部分(因为它太长了…) 它看起来类似于此(简化)示例: const myPromise=新承诺((解决、拒绝)=>{ setTimeout(函数(){ 决议(假); }, 500); }); 我的承诺 .然后(值=>{ 如果(值){ //做点什么 console.log('value:'+value) log('do something'); }否则{ //仅当value=true时才执行其他操作 //这真的很长。。。。。。。。。。。。。 co
.then()
方法,我希望将其分成更小的部分(因为它太长了…)
它看起来类似于此(简化)示例:
const myPromise=新承诺((解决、拒绝)=>{
setTimeout(函数(){
决议(假);
}, 500);
});
我的承诺
.然后(值=>{
如果(值){
//做点什么
console.log('value:'+value)
log('do something');
}否则{
//仅当value=true时才执行其他操作
//这真的很长。。。。。。。。。。。。。
console.log('value:'+value)
log('do other');
}
});
为了简化,我想到了这样做:
const myPromise=新承诺((解决、拒绝)=>{
setTimeout(函数(){
决议(假);
}, 500);
});
我的承诺
.然后(值=>{
如果(值){
//做点什么
console.log('value:'+value)
log('do something');
//停止“then”执行(下一个“then”不应运行)->如何执行?
}否则{
//然后在下一步继续处理
返回值
}
})
.然后(值=>{
//仅当value=false时才执行其他操作
console.log('value:'+value)
log('do other');
})
我无法弄清楚的是如何让//停止“then”执行(下一个“then”不应该运行)->如何做到这一点?
要工作…您可以通过返回拒绝的承诺来“停止”,然后链,这就是它将“跳”到捕获阶段的原因
const myPromise=新承诺((解决、拒绝)=>{
setTimeout(函数(){
决心(正确);
}, 500);
});
我的承诺
.然后(值=>{
如果(值){
//做点什么
console.log('value:'+value);
log('do something');
//停止“then”执行(下一个“then”不应运行)->如何执行?
返回承诺。拒绝();
}否则{
//然后在下一步继续处理
返回值;
}
})
.然后(值=>{
//仅当value=false时才执行其他操作
console.log('value:'+value);
log('do other');
});
您可以通过返回拒绝的承诺来“停止”然后
链,这就是它将“跳转”到捕获
阶段的原因
const myPromise=新承诺((解决、拒绝)=>{
setTimeout(函数(){
决心(正确);
}, 500);
});
我的承诺
.然后(值=>{
如果(值){
//做点什么
console.log('value:'+value);
log('do something');
//停止“then”执行(下一个“then”不应运行)->如何执行?
返回承诺。拒绝();
}否则{
//然后在下一步继续处理
返回值;
}
})
.然后(值=>{
//仅当value=false时才执行其他操作
console.log('value:'+value);
log('do other');
});代码>并将抛出一个错误。我必须在那里处理“好的错误”。对的注意:我使用catch()
方法来处理错误,在catch
中需要一些逻辑,并将抛出错误。我必须在那里处理“好的错误”。对的注意:我使用catch()
方法来处理错误,在catch