我在Node.js中运行以下代码时遇到错误: TypeError:next不是函数
function lastmessage(collection, path, conf, conf2, next) {
let tmp = conf === 0 ? hotelcode : parseInt(hotelcode);
db.collection(collection).find({
[path]: tmp
}).sort({
'created_at': -1
}).toArray(function(error, docs) {
if (error) return next(error);
if (docs.length > 0) {
if (conf2 === 0) {
console.log(docs[0].updatedAt);
return next(null, docs[0].updatedAt);
}
console.log(docs[0].created_at);
return next(null, docs[0].created_at);
}
console.log('empty');
return next(null, 'empty');
});
}
我做错了什么?
答案 0 :(得分:1)
我认为,如果你在这个函数中设置的第五个参数是一个函数,你应该首先定义名为next的函数。
答案 1 :(得分:0)
// callback function
function someFunc(holder, document) {
// do stuff
}
// when calling lastMessage, of course there won't be null values.
lastMessage(null, null, null, null, someFunc);