var FilterAndSortByQuery = function(req,res,QuestionModel) {
var query = req.query;
QuestionModel
.find(query, function (err, question) {
if (err) {
res.status(500).send(err)
} else {
if (query.OnlyNumber) {
res.json(question.length);
} else {
res.json(question);
}
}
})
};
这里我写了一个函数,它接收查询并从我的QuestionModel返回过滤结果。如果只返回结果数,则query.OnlyNumber设置为true,反之亦然。 事实证明,如果query.OnlyNumber为false,则结果正常,如果为true,则返回0。 我已经尝试了其他几种编写方法,似乎只有“else”中的函数才能正常工作。这有什么理由吗?