我已經(jīng)在nodejs中嘗試過了,但我在控制臺中沒有定義為輸出
// Connect using a MongoClient instance
const MongoClient = require("mongodb").MongoClient;
const test = require("assert");
// Connection url
const url = "mongodb://localhost:27017";
// Database Name
const dbName = "test";
// Connect using MongoClient
const mongoClient = new MongoClient(url);
mongoClient.connect(function (err, client) {
const db = client.db(dbName);
try {
db.collection("employeeDetails")
.find({})
.toArray(function (err, res) {
console.log(res);
});
} catch (e) {
console.log(e);
} finally {
client.close();
}
});
我在mongodb中有數(shù)據(jù):
如何在控制臺中獲取員工詳細(xì)信息?如有任何幫助,將不勝感激
在得到結(jié)果之前,您正在關(guān)閉連接。如果您在
toArray()
內(nèi)打印err
以及結(jié)果,您將看到下面的錯誤-之所以發(fā)生這種情況,是因為
db.collection("employeeDetails")...
正在被調(diào)用,但在回調(diào)中等待結(jié)果,直到它向前移動,因為在該語句之后,您將退出try-catch
,然后進入finally
,從而關(guān)閉會話。處理db.collection...
調(diào)用時,此會話已經(jīng)結(jié)束,您會看到此錯誤。您可以使用異步等待。修改您的代碼如下-
在
mongoClient.connect(async function (err, client)..
行中,我們在回調(diào)函數(shù)之前使用async,后面在回調(diào)函數(shù)中使用async,我們可以使用-在此之后,
console.log
將正確打印結(jié)果。