嘿,我早上问了一个单独的查询。我没有得到很多答复。从那里我花了很多时间学习异步/等待,承诺和回调,以了解我要去哪里。 但是我还是有点困惑如何执行我的逻辑。这是我的要求
一切正常。
在循环结束之前,我还有另外两个要求
我正在使用猫鼬findOne进行查询。我希望整个循环同步运行,一次通过每一对,而不必先完成for循环。但是我不知道如何同步运行该猫鼬查询。
我也在使用NODE js
有人可以引导我吗?
for (let i=0; i<namearray.length-1;){
player1 = namearray[i];
console.log('Hi I am here 4')
console.log("Hi i am Player 1", player1)
for(let j=0; j<namearray.length;){
if(j <= i){
j = i;
j++;
continue;
}
player2 = namearray[j]
console.log('Hi I am here 5')
console.log("Hi i am player 2", player2)
tournamentMatchRegister.findOne({$and:[{$or:[{Player1_Name : player1}, {Player2_Name : player2}]},
{$or:[{Player1_Name : player2}, {Player2_Name : player1}]}]},function(err,data9){
console.log('Hi I am here 6')
//console.log(data9)
console.log("Hi i am ", player1)
console.log("Hi i am ", player2)
//if(data2.Match_Completed === "No"){
var newpotentialmatch = new scheduleRegister({
// Week_Number: weeknumber,
Player1_Name: player1,
// Player1_Team: data2.Player1_TeamName,
// Player1_Seed: data2.PlayerSeedLevel,
Player2_Name: player2,
// Player2_Team: data2.Player2_TeamName,
// Player2_Seed: data2.PlayerSeedLevel
}); newpotentialmatch.save(function(err,data3){
if(err){
console.log(err)
}
})
})
// })
j++
}
i++
}
答案 0 :(得分:0)
除非您不进行修改,否则for循环将完成。如果我了解您要做什么,我认为使用回调将是前进的道路。我认为这里的一些答案可能会有所帮助:Making mongoose.js queries run synchronously