代碼:User.findOne({name: name}, function(err, user){ if(err) { console.log(err); data.data = "發(fā)生未知錯誤" data.status = 1001 } if(!user){ console.log(user) data.data = "用戶不存在" data.status = 1002 } else{ user.comparePassword(password, function(err, isMatch) { if(err) { console.log(err); data.data = "發(fā)生未知錯誤" data.status = 1001 } if(isMatch) { data.data = "登錄成功" data.status = 1000 } else { data.data = "密碼不正確" data.status = 1003 } }) } res.send(data) }) 問題:數(shù)據(jù)庫用的mongodb,建模工具用的mongoose,這里由于nodejs的異步機制,導(dǎo)致最后res.send(data)發(fā)送的數(shù)據(jù)永遠是data:{data: '', status: 1000 },請問一下怎么寫才能夠讓代碼順序執(zhí)行,得到正確的data值?
如何解決node.js異步問題?
qq_笑_17
2018-12-20 18:19:07