如何打破 Sequelize promise .then({})。我想打破对 then promise 的退出并打破循环。当条件触发时。代码与以下相同。不是我的确切代码。
int i = 0;
while(i<result.length){
db.Model.findAll({
where:{
x : X,
w : W,
z : z
}).then(result => {
if(result[i].x == null || result[i].x == undefined){
// update and break here!
update(): // something like that
// how i break the outer loop.
}
if(result[i].w > 0){
// how i break the outer loop.
}
if(result[i].z < 100){
// how i break the outer loop.
}
})
i++;
}
最佳答案
您只需要 async / await
并像这样实现它:
async function your_function(){
// init your result varibale
for(let i=0 ; i < result.length ; i++) {
let mresult = await db.Model.findAll({
where:{
x : X,
w : W,
z : z
})
if(mresult[i].x == null || mresult[i].x == undefined){
update(): // something like that
break; // <------------- Break it like this
}
if(mresult[i].w > 0){
break; // <------------- Break it like this
}
if(mresult[i].z < 100){
break; // <------------- Break it like this
}
}
}
关于javascript - 如何打破从内部 promise 函数触发的循环?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49915734/