db.collection.find()没有按预期工作



所以基本上我试图在一个集合中获得所有的文档(因为它在Mongodb中被称为)。我看过一些Youtube视频,他们使用db.collection.find()方法来做到这一点。

在我的情况下,然而,由于某些原因,这不起作用。我正在使用node js,看看下面的代码。

import { MongoClient } from 'mongodb';
const client = new MongoClient(uri);
const database = client.db(dbase);
const collection = database.collection(collec);
const getAll = async () => {
const res = await collection.find({});
await client.close();
return res;
console.log(getAll);

我期望得到一个对象或者一个对象数组但不幸的是我得到了这个

<ref *1> FindCursor {
_events: [Object: null prototype] {},
_eventsCount: 0,
_maxListeners: undefined,
[Symbol(kCapture)]: false,
[Symbol(client)]: MongoClient {
_events: [Object: null prototype] {},
_eventsCount: 0,
_maxListeners: undefined,

我不打算显示完整的错误信息,因为它包含敏感信息,但这是我认为应该保存共享的前几行。

Thanks in advance…

需要调用toArray()函数来获取结果数组。

const getAll = async () => {
const res = await collection.find({}).toArray();
await client.close();
return res;
}
console.log(getAll())

找到答案了

const getAll = async () => {
const cursor = COL.find({});
await cursor.forEach((doc) => console.log(doc));
};

const getAll = async () => {
const res = await collection.find({}).toArray();
await client.close();
return res;
}
console.log(getAll())

感谢Sou的第二个答案!

最新更新