ich andere Funktion aufgerufen werden soll und wie die Ergebnisse dieser Funktion zu erhalten,Wie eine funtion in einer anderen Funktion in Node.js nennen
function1,
exports.getprofiledatalistbyid = function (req, res) {
var params = req.params;
var profile= db.collection('profile');
var requests= db.collection('requests');
profile.find().toArray((err, result) => {
if (err){ return console.log(err)
}
if(result){
// console.log(result)
for(var i in result){
var id = result[i]._id;
var id = id.toString();
exports.getdetails(id)
}
}
else{
response = {status:'fail',data:[] };
}
// res.send(response);
});
};
function2,
exports.getdetails = function (req,res) {
// var profile= db.collection('profile');
var requests= db.collection('requests');
var params = req.params;
var id = params.id;
requests.find({ $or:[ {'sent_id':id}, {'recieved_id':id}]}).toArray((err, result) => {
if (err){ return console.log(err)
}
if(result){console.log(result)
return result;
}
else{
response = {status:'fail',data:[] };
}
});
};
Routen,
var profile = require('../controller/user');
router.get('/getprofiledatalistbyid/:id?', cors(), profile.getprofiledatalistbyid);
Also hier möchte ich die Ergebnisse von Funktion 2 in Funktion 1 verwenden.
Kann mir jemand helfen?
Danke.
Mögliches Duplikat [Wie kann ich die Antwort von einem asynchronen Aufruf zurückkehren?] (Http://stackoverflow.com/questions/14220321/how-do-i-return-the-response- von einem asynchronen Anruf) –
@klp erhalten Sie immer noch denselben Fehler? – abdulbarik
abdulbarik, ich versuche mit der Verheißungsmethode, hoffe, dass es funktioniert – klp