我无法找到解决这个简单问题的方法:我想调用从外部.js导出的函数并保存输出。我做了以下事情:
db.js
function findMessages () {
allMsg = mongoose.model('allMsg');
allMsg.find(function (err, message) {
console.log('here is ok');
return message;
});
};
exports.returnMessages = findMessages;
app.js
var db = require( './db' );
app.get('/message', function(req, res){
var messages = db.returnMessages();
console.log('Nothing here (undefined): ' + messages);
});
如何阅读app.js中的消息? 感谢。
答案 0 :(得分:2)
简单回答:你做不到。这不是回调的工作方式。
您需要更改findMessages()
以接受回调功能。
function findMessages (callback) {
allMsg = mongoose.model('allMsg');
allMsg.find(function (err, message) {
callback(message)
});
};
// app.js
app.get('/message', function(req, res) {
db.returnMessages(function(messages) {
console.log(messages);
});
});