Я не могу понять, почему вставленный документ MongoDB, хотя он содержит элементы, код не может перебирать. Сам объект курсора не равен нулю. Я могу получить документы с помощью db.newmongo.find()MongoDB, выдавать при повторении курсора
var url = 'mongodb://localhost:27017/test';
MongoClient.connect(url, function(err, db) {
db.collection("newmongo").insert([{"name": "XXX", "age": "50"},
{"name": "YYY", "age": 43},
{"name": "ZZZ", "age": 27},
{"name": "AAA", "age": 29},
{"name": "BBB", "age": 34}]);
console.log("Connected correctly to server.");
var cursor=db.collection('newmongo').find();
console.log(cursor); // This gets logged
cursor.each(function(err, doc) {
if (doc != null) {
console.log('Document found');
} else {
console.log('Document not found');
}
});
Почему это дубликат? Поскольку еще один человек, использующий асинхронный вызов типа '.insert()', но затем пытается найти этот результат сразу после этого **, без ** «Ввод кода, который следует за этой операцией ** внутри **, обратный вызов для этой операции ». Вы используете синхронные методы кодирования с асинхронными функциями. Понять эти вызовы не блокировать до завершения до того, как будут запущены следующие строки кода. Callbacks. –
Похоже, что есть ошибка в документе JSON, который вы пытаетесь вставить –