这个 mongoose 聚合查询与我之前工作的另一个项目中的回调一起工作。由于某种原因,在这种形式中它不适用于 exec。
try {
console.log(rank)
challengeList = await Member.aggregate([
{$match:{$and:[{MemberRank:{"$lt": rank}},{MemberIsactive: "Y"}]}},{$project: {MemberName:1,MemberFDR:1,MemberRank:1}},{$sort:{MemberRank:-1}},{$limit: 20}
]).exec()
} catch (err) {
const error = new HttpError(
'Something went wrong,could not update member.',500
);
return next(error);
}
查询工作的早期项目
GSM.findOne({Player_Name: req.user.Player_Name},function(err,data2){
if(err){
console.log(err)
} else {
GSM.aggregate([
{$match:{$and:[{Rank:{"$lt": data2.Rank}},{Player_activePlayer: "Y"}]}},{$project: {Player_Name:1,Player_FDR:1,Rank:1}},{$sort:{Rank:-1}},{$limit: 20}
]).exec(function(err,data){
if(err){
console.log(err);
}
数据按预期为我提供了列表
我希望 ChallengeList 通过查询返回我需要的列表。我错过了什么?谁能解释一下?