我遇到了node.js回调函数的问题。
这是我的postProcessing.js文件。
var express = require('express');
//create router like interface for responce to app.js
var router = express.Router();
//Inject mongoose in context
var mongoose = require('mongoose');
//Create Mongoose Schema object
var Schema = mongoose.Schema;
router.get('/', function(req, res, next) {
var radnikProjId = new Array();
function make(callback) {
mongoose.model('radprojcol').find({'mbr': 50}, function(err, radproji) {
radproji.forEach(function(radproj){
mongoose.model('projekatcol').findOne({'spr': radproj.spr}, function(err, projekat) {
radnikProjId.push({'id':projekat._id});
});
});
});
return callback(radnikProjId);
}
make(function(resp){
console.log(resp)
});
});
module.exports = router;
当我调用 make 函数时,它会返回一个空文档。
但是当我在大多数内部 foreach 中调用回调时,它会返回一个好文档,并且只需要我所需要的。
此代码有什么问题,任何人都可以帮助我吗?
我表示当我在 make 函数中调用回调时,我的radnikProjId数组变量将及时满足对象。
Thak you。