如何解析mongodb的collection.在node.js中查找post调用的if状态



我有一个问题,我试图查询一个名为searchLog (db. log)的集合。search_log = searchLog)使用db.collection.find()方法,但它不返回任何东西,尽管所需的项目在数据库中。我在谷歌上搜索了一下,似乎这可能与集合的异步性质有关。我想问一下是否有办法解决这个问题。谢谢你。

app.post('/', (req, res) => {
let bookName = req.body.book;
let queriedResult = searchLog.find({'name': bookName });
if (!queriedResult) {
// If queriedResult is not empty, do something
} else {
// Do something else
}    
});

Mongodb.collection.find返回一个Promise。您可以使用async/await来解析find promise

app.post('/', async(req, res) => {
let bookName = req.body.book;
let queriedResult = await searchLog.find({'name': bookName });
if (!queriedResult) {
// If queriedResult is not empty, do something
} else {
// Do something else
}    
});