我正在尝试通过MongoDB集合进行同步循环。
我尝试通过以下方式使用cursor.forEach()
:
const mongodb = require('mongodb').MongoClient
mongodb.connect('mongodb://localhost:27017',{ useNewUrlParser: true },(error,mongo) => {
if (error) { return console.error(error) }
let cursor = mongo.db('database_name').collection('collection_name').find()
cursor.forEach(item => {
console.log(item._id)
})
});
但是它不适用于同步操作。
因此,我决定通过cursor.hasnext()
和cursor.next()
它看起来像这样:
const mongodb = require('mongodb').MongoClient
mongodb.connect('mongodb://localhost:27017',mongo) => {
if (error) { return console.error(error) }
let cursor = mongo.db('database_name').collection('collection_name').find()
getDocument(cursor)
});
const getDocument = (cursor) => {
console.log(cursor._id))
if (cursor.hasnext()) {
getDocument(cursor.next())
}
}
显然,它返回一个错误,指出没有cursor._id
之类的东西。那么,如何从光标获取当前文档的正文(内容)?