是否有任何方法将错误处理回调函数放在方法 find()
中
进入另一个名为modules.js的模块。我试图这样做,但唯一的问题是,一旦回调函数在另一个模块中res对象变得不可访问,因此我无法使用res.send方法。
app.get('/blogs/all',function(req,res,next){
Blog.find({},function(err,result){
if(err)
res.send("some error");
else
res.send(result);
});
});
答案 0 :(得分:0)
是的,您可以使用closures轻松完成此操作。
现在我们要写一个简单的函数并将其保存在一个名为dbHandler的文件中来处理你的Db调用。
let dictionary = Dictionary(grouping: tablesArray, by: predicate)
现在在您的代码中使用此模块。
module.exports = function (res) {
var response = res;
return function(err,result){
if(err)
response.send('some error');
else
response.send(result);
}
};
DBhandler返回一个函数,该函数充当数据库调用的回调函数,但由于关闭而可以访问响应。