Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js MongoDB在返回对象的NodeJ上查找元素_Node.js_Mongodb - Fatal编程技术网

Node.js MongoDB在返回对象的NodeJ上查找元素

Node.js MongoDB在返回对象的NodeJ上查找元素,node.js,mongodb,Node.js,Mongodb,我使用的是MongoClient,似乎每当我尝试通过查询查找时,都会返回一个对象,但它在mongo终端中工作得非常好。此数据库初始化用于输入数据 MongoDB终端: mongo use player-db db.players.find({"id":"1"}) 结果:{“\u id”:ObjectId(“5F3CA631950B2F4B15E27”),“id”:“1”,“name”:“test”} 现在在server.js中: mongo use pl

我使用的是
MongoClient
,似乎每当我尝试通过查询查找时,都会返回一个对象,但它在mongo终端中工作得非常好。此数据库初始化用于输入数据

MongoDB终端

mongo
use player-db
db.players.find({"id":"1"})
结果:
{“\u id”:ObjectId(“5F3CA631950B2F4B15E27”),“id”:“1”,“name”:“test”}

现在在server.js中:

mongo
use player-db
db.players.find({"id":"1"})
consturl='{ommited}'
const dbName='player db'
让db;
connect(url,{useNewUrlParser:true,useUnifiedTopology:true},(错误,客户端)=>{
if(err)返回console.log(err)
db=client.db(dbName)
log(`Connected to Database:\n${url}/${dbName}`)
})
/**不起作用的函数**/
const GetOne=(集合,id)=>{
让test=db.collection(“players”).find({“id”:“1”});
控制台日志(测试);
}
预期输出:
{“_id”:ObjectId(“5f3ca631950b2f4b1f157e27”),“id”:“1”,“name”:“test”}

实际输出:

Cursor {
  _readableState: ReadableState {
    objectMode: true,
    highWaterMark: 16,
    buffer: BufferList { head: null, tail: null, length: 0 },
    length: 0,
    pipes: [],
    flowing: null,
    ended: false,
    endEmitted: false,
    reading: false,
    sync: true,
    needReadable: false,
    emittedReadable: false,
    readableListening: false,
    resumeScheduled: false,
    errorEmitted: false,
    emitClose: true,
    autoDestroy: true,
    destroyed: false,
    errored: false,
    closed: false,
    closeEmitted: false,
    defaultEncoding: 'utf8',
    awaitDrainWriters: null,
    multiAwaitDrain: false,
    readingMore: false,
    decoder: null,
    encoding: null,
    [Symbol(kPaused)]: null
    ........................... etc.


您当前正在获取并记录
光标

    let test = db.collection("players").find({"id" : "1"}).toArray(function(err, docs) {
       console.log(docs)
    });

应该显示您的文档
toArray
将光标“转换”为找到的文档数组。它接受一个回调函数,完成后将执行该函数。你也可以承诺或异步/等待
等待db.collection…

我爱你。你是个了不起的人。