【发布时间】:2017-02-19 16:27:45
【问题描述】:
我正在尝试使用 mongoose 使用 mongoDB 数据库中的记录填充数组。当我试图填写记录时。即使我声明了函数外部,它也会在函数外部显示一个空数组。下面是代码。
var saveMessageToVariable = function(){
var records = [];
var spark_ids = [];
var obj = new Object();
Message.find().distinct("spark_id").exec(function(err,data) {
data.forEach(function (id) {
if(id != null)
spark_ids.push(id);
});
// console.log(spark_ids.length);
spark_ids.forEach(function(spark_id){
Message.findOne({"spark_id":spark_id}).sort({"date":-1}).exec(function(err,data){
obj.spark_id = data.spark_id;
obj.meesage = data.message;
obj.date = data.date;
obj.message_id = data._id;
records.push(obj);
});
});
});
console.log(records);
}
当我运行它时,日志显示一个空数组。我该如何解决这个问题?
【问题讨论】:
标签: javascript node.js mongodb mongoose mongoose-schema