const handleBlogRouter = (req, res) => {
const method = req.method;
const id = req.query.id || "";
// 获取博客列表
if (method === "GET" && req.path === "/api/blog/list") {
// 获取参数
const author = req.query.author || "";
const keyword = req.query.keyword || "";
return getList(author, keyword).then((listData) => {
return new SuccessModel(listData);
})
}
handleBlogRouter这个函数的返回值是一个promise,那么返回的是getList函数异步执行后的结果,也就是listData;之后再返回被SuccessModel(listData)包裹后的对象对吗?
问题是app.js里面的blogResult是异步后的结果,这个结果也是promise吗(因为下面被then了。。)
const blogResult = handleBlogRouter(req, res);
if (blogResult) {
blogResult.then(blogData => {
res.end(JSON.stringify(blogData));
})
return
}
这个环节的promise传递有点晕?老师能帮忙捋一下异步函数的返回吗~