Javascript js承诺-如何结束“;然后";如果条件满足则执行,如果不满足则继续下一步

Javascript 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

我承诺使用1
.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