Ich habe zwei Dateienmongodb async NodeJS externe Datei mit Funktionen - Rückkehr: undefinied
server.js
(function() {
var x = modules.dbFind('7');
setTimeout(function() {
console.log(x);
}, 100);
})();
und meine modules.js
var dbFind = (id) => {
console.log("dbFIND function in use!");
MongoClient.connect(url, function(err, db) {
if (err) throw err;
db.collection("users").findOne({id:id}, function(err, result) {
if (err) throw err;
console.log(JSON.stringify(result));
return(result);
db.close();
});
});
};
ich RESULT übergeben wollen aus Module in die Server-Datei und lesen Sie es dort, aber x = nicht definiert. Ergebnis in modules.js - console.log (Ergebnis) zeigt alles wie ich möchte.
Ich weiß, dass das Problem im Lesen von X ist, bevor das Ergebnis dort ankommt - aber ich versuche schon paar Tage und ich habe keine Ahnung, wie ich es lösen soll.
Sie sollten Async warten, um den Wert x zu erhalten. Wenn Sie den x-Wert zugewiesen haben, wurde dbFind nicht beendet. – sungyong