我试过看,但没有找到任何与我的问题有关的内容。我试图将JSON对象返回到客户端AJAX调用,但值仍然是未定义的。
前端callAdmin.js对/ retrieveRandomQuestion进行AJAX调用
现在后端的QuestionAnswer.js被调用:
router.post('/retrieveRandomQuestion', function(req, res) {
console.log('retrieveRandomQuestion called');
db.retrieveRandomQuestion(req);
});
// fyi app.js有全局变量
db = new database();
...现在转到dbLayer.js
var db = function() {
// retrieve a random question from the database
this.retrieveRandomQuestion = function(req) {
question.count().exec(function(err, count) {
var random = Math.floor(Math.random() * count);
question.findOne().skip(random).exec(
function (err, result) {
console.log(result);
});
});
};
}
上面显示的dbLayer中的console.log(result)显示了该对象,但是当我尝试访问questionAnswer.js中的对象时
db.retrieveRandomQuestion(REQ);
它打印未定义。
帮助!