В другом ответе говорится, что используйте Promises, но я не думаю, что это будет необходимо, вы используете async
и await
, более современную реализацию Promises.
Просто переместитеdoIt()
вызов функции в асинхронный вызов.Поскольку это узел, а не блокировка, это будет более правильной реализацией.
async function dbQuery() {
const MongoClient = require('mongodb').MongoClient;
const url = "mongodb://localhost:27017/";
const db = await MongoClient.connect(url);
const dbo = db.db("mydb");
const result = await dbo.collection("tblData").find({}).toArray()
return result;
}
async function doIt() {
console.log("Starting...");
try {
const res = await dbQuery();
console.log("Records: " + res.length);
} catch (error) {
console.log(error);
}
console.log("Done!");
}
doIt();