这是一个纯粹的最佳实践问题。我对 Node 和 Mongoose 很陌生。我非常喜欢这项技术,并且一直在着手为我正在构建的应用程序构建一个 JSON 支持的 API 的项目。
我发现当我从数据库中获取对象时,我不断地重复代码。例如:
Playlist.findById(req.params.id, function(err,playlist){
if (err)
return res.json({error: "Error fetching playlist"});
else if (!playlist)
return res.json({error: "Error finding the playlist"});
//Actual code being performed on the playlist that I'm fetching
});
函数调用顶部的错误处理很烦人,因为我必须为每次调用数据库重复该代码......或者我认为。
我考虑过使用如下回调:
var fetchCallback = function(err,objOrDoc,callback){
//Handle the error messages
callback(objOrDoc);
};
但是,这种方法会打乱我的顺序流程,因为我必须在执行获取之前定义回调函数。因此,如果我有很多链接在一起的数据库查询,我将不得不以相反的顺序放置回调,这从干净编码的角度来看远非理想。
我想知道是否有人遇到过这个问题并且有任何减少重复的最佳实践。
我也在使用 express 框架,所以如果有一种有用的方法可以在 express 中处理它,我也很想知道。