gpt4 book ai didi

javascript - Mongodb Nodejs : return undefined after callback of an exported function

转载 作者:太空宇宙 更新时间:2023-11-04 01:49:25 27 4
gpt4 key购买 nike

我是 Node.js 世界的新手。我已将 Node 连接到我的 MongoDB 服务器。现在我想为 MongoDB 的 CRUD 操作编写模块,但是当我调用 find 时,它返回 undefined

如何解决这个问题?

ma​​in.js

    var MongoClient = require('mongodb').MongoClient;
var express = require('express');
var app = express();
var url = "mongodb://localhost:27017/movie";
var result;
var crud = require('./crud.js');

MongoClient.connect(url, function(err, db) {
if (err) throw err;
var dbo = db.db("movie");
var test=crud.findAll(db,dbo,"test");
console.log(test);
});

var server = app.listen(8081, function () {
var host = server.address().address;
var port = server.address().port;
console.log("Listening on "+host+":"+port);
})

crud.js

    exports.findAll = function(db, dbo, collection){
dbo.collection(collection).find({}).toArray(function(err,result){
if (err) throw err;
db.close();
return result;
});
}

最佳答案

函数findAll没有返回值,因此test的值是未定义。你必须处理回调结果或者基于Promise进行实现。

关于javascript - Mongodb Nodejs : return undefined after callback of an exported function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50282449/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com