我收到以下错误:TypeError: undefined is not a function
回调(null, array_reply, threadResults);
这部分看起来很糟糕,但我不知道为什么。
我需要你的帮助。谢谢
async.waterfall([
function (callback) {
Model.find()
.limit(10)
.sort({pushed_date: 'desc'})
.exec( function (err, results) {
if (err) {
log('Error: ' + err.message);
callback(err);
return;
}
var array_reply = new Array();
async.forEachSeries(results,
function (result, callback) {
var reply = result.replies[result.replies_count];
array_reply.push(reply);
},callback);
callback(null, array_reply);
});
},
function (array_reply, callback) {
Model.find()
.limit(10)
.sort( {replies_count: 'desc'} )
.exec( function (err, results) {
if (err) {
callback(err);
return;
}
callback(null, array_reply, results);
});
}
], function (err, array_reply, results) {
if (err) {
console.error("Error!");
return next(err);
}
res.render("aaa.hbs",{
models: results,
posts: array_reply
});
})
我这样改变了我的来源。
async.waterfall([
function (callback) {
Model.find()
.limit(10)
.sort({pushed_date: 'desc'})
.exec( function (err, results) {
if (err) {
log('Error: ' + err.message);
callback(err);
return;
}
var array_reply = new Array();
async.forEachSeries(results,
function (result, callback) {
var reply = result.replies[result.replies_count];
array_reply.push(reply);
},callback);
callback(null, array_reply);
});
},
function (array_reply, callback) {
Model.find()
.limit(10)
.sort( {replies_count: 'desc'} )
.exec( function (err, results) {
if (err) {
callback(err);
return;
}
if (results.length > 0) {
res.render("aaa.hbs",{
models: results,
posts: array_reply
});
} else {
res.render("aaa.hbs",{
models: null,
posts: array_reply
});
}
});
}
], function (err) {
if (err) {
console.error("Error!");
return next(err);
}
})
最佳答案
有callback double call(可能有问题):
async.forEachSeries(results,
function (result, callback) {
var reply = result.replies[result.replies_count];
array_reply.push(reply);
},callback);
callback(null, array_reply);
我猜可能是这样的:
async.forEachSeries(results,
function (result, callback) {
var reply = result.replies[result.replies_count];
array_reply.push(reply);
},
function(err) {
callback(err, array_reply);
});
关于javascript - 类型错误:undefined 不是 node.js/express.js 中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20394261/