为了账号安全,请及时绑定邮箱和手机立即绑定

ctx.render()加载页面需要等后续执行全部结束才会显示最终结果吗?

ctx.render()加载页面需要等后续执行全部结束才会显示最终结果吗?

幕布斯7119047 2019-05-21 10:59:44
想要实现的的业务是先渲染页面,然后通过ctx.body往页面中加内容核心代码如下awaitctx.render('crawler',{title:'爬取页面',content:`开始爬取创建地址池成功!`})constlinkPool=createLinkPool()for(leti=0;i{awaitctx.render('crawler',{title:'爬取页面',content:`开始爬取创建地址池成功!`})next()})页面渲染之后也确实执行了入库操作的逻辑,但是ctx.body+=`爬取地址${linkPool[i]}的${rows.affectedRows}条数据已经入库`这个操作并没有往页面上写内容,是不是我的用法不对,请问ctx.body是干什么的?
查看完整描述

2 回答

?
胡说叔叔

TA贡献1804条经验 获得超8个赞

你都awaitquery了当然是读完再返回。如果你需要先渲染一遍,再填充数据,只能在前端写脚本访问后端接口,因为http不能主动写数据。
                            
查看完整回答
反对 回复 2019-05-21
?
LEATH

TA贡献1936条经验 获得超6个赞

你的这个需求,最好的方法就是前后端分离
前端有个静态页面,然后请求后台的接口数据填充页面就可以了
ctx.body方法是往前端返回数据相当于response.body的内容
                            
查看完整回答
反对 回复 2019-05-21
  • 2 回答
  • 0 关注
  • 939 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信