function findOneFun(id, cb) {
db.blogs.findOne({_id: id}, function(err, o){
cb(err, o);
})
}
var findOne = thunkify(findOneFun);
var blog = yield findOne(new toObjectID(this.params.id)); //这句调用中,findOneFun的cb 出错,如何捕捉。 try catch?
顺便说个小问题,浏览器最小化的时候,文本框长度没变,页面撑坏了。 --chrome
8 回复
@lonso 你也可以添加个全局的错误捕获
/*
* global error handle
*/
app.use(function * (next) {
try {
yield next;
} catch (e) {
if (e.code === 400) {
this.status = 400;
this.body = {
message: e.message
};
} else {
this.status = 500;
this.body = {
message: 'server error'
};
}
}
});