我無法從調用MongoDB中檢索數據。 調用工作,因爲我可以顯示結果到控制檯,但是當我嘗試將這些結果寫入/複製到外部數組,以便它們可用於我的程序,在調用之外時,我什麼都沒有。 我見過的每一個例子都是在連接循環中工作的。我找不到任何將結果複製到數組(全局或傳入)的示例,連接結束,程序繼續處理外部數組。從MongoDB調用中獲取數據
這裏的大部分示例代碼要麼過於簡單(即連接循環中的console.log),要麼太複雜,以及如何製作快速api路由的示例。我不需要這個,因爲我正在做老式的串行批處理。 我知道Mongo的構建是異步的,但我仍然可以使用它。
MongoClient.connect('mongodb://localhost:27017/Lessons', function (err, db) {
assert.equal(err, null);
console.log("Connectied to the 'Lessons' database");
var collection = db.collection('students');
collection.find().limit(10).toArray(function(err, docs) {
// console.log(docs);
array = docs.slice(0); //Cloning array
console.log(array);
db.close();
});
});
console.log('database is closed');
console.log(array);
它看起來像我試圖在循環完成之前記錄數據。但如何同步時間? 如果有人能向我解釋這一點,我會非常感激,因爲我一直盯着這個東西好幾天,真的很蠢。
您的選擇是正確的。您的不情願與選項1一起完全正確。 – JohnnyHK