【技术实现步骤摘要】
异步渲染模块的同步方法及系统
本专利技术涉及计算机
,尤其涉及一种异步渲染模块的同步方法及系统。
技术介绍
目前,在前端模型-视图-控制器(ModelViewController,简称MVC)模型的渲染中,如图1所示,第一视图(ViewA)渲染完成后,需要把自己的数据发送事件给第二视图(ViewB),ViewB监听此事件,然后用ViewA的数据来渲染其子视图(SubView)。但是,由于ViewA和ViewB是异步渲染模块,各自独立请求服务器,数据返回的时间依赖网络,所以ViewA和ViewB渲染完成的先后顺序不能保证。比如,当ViewA向ViewB发送事件的时候,ViewB很可能还在请求数据,没有渲染完成,也就是说ViewB没有注册与ViewA相应的事件,这样,整个的页面交互逻辑就失败了。鉴于此,如何解决异步渲染模块的同步问题,以保证执行特定操作的时候,所有异步模块都渲染完成,且所有数据都准备妥当成为目前需要解决的技术问题。
技术实现思路
为解决上述的技术问题,本专利技术提供一种异步渲染模块的同步方法及系统,能够解决异步渲染模块的同步问题,保证执行特定操作的时候,所有异步模块都渲染完成,且所有数据都准备妥当。第一方面,本专利技术提供一种异步渲染模块的同步方法,包括:监控模块监听当前界面中的第一视图的事件;在接收到所述第一视图发送的携带第一数据的事件时,调整自身的状态参数,并将所述第一数据保存到自身的数据变量中;判断此时调整后的状态参数是否为预设最大值、及所述数据变量中是否保存有数据;若此时调整后的状态参数为预设最大值、且所述数据变量中保存有数据,则将数 ...
【技术保护点】
一种异步渲染模块的同步方法,其特征在于,包括:监控模块监听当前界面中的第一视图的事件;在接收到所述第一视图发送的携带第一数据的事件时,调整自身的状态参数,并将所述第一数据保存到自身的数据变量中;判断此时调整后的状态参数是否为预设最大值、及所述数据变量中是否保存有数据;若此时调整后的状态参数为预设最大值、且所述数据变量中保存有数据,则将数据变量中保存的所述第一数据发送至当前界面中的第二视图,以使所述第二视图根据所述第一数据渲染其子视图,并在所述第二视图对其子视图渲染完成之后,将所述状态参数重置为初始值。
【技术特征摘要】
1.一种异步渲染模块的同步方法,其特征在于,包括:监控模块监听当前界面中的第一视图的事件;在接收到所述第一视图发送的携带第一数据的事件时,调整自身的状态参数,并将所述第一数据保存到自身的数据变量中;判断此时调整后的状态参数是否为预设最大值、及所述数据变量中是否保存有数据;若此时调整后的状态参数为预设最大值、且所述数据变量中保存有数据,则将数据变量中保存的所述第一数据发送至当前界面中的第二视图,以使所述第二视图根据所述第一数据渲染其子视图,并在所述第二视图对其子视图渲染完成之后,将所述状态参数重置为初始值。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:监控模块监听当前界面中的第二视图的事件;在接收到所述第二视图发送的事件时,调整自身的状态参数;判断此时调整后的状态参数是否为预设最大值、及所述数据变量中是否保存有数据;若此时调整后的状态参数为预设最大值、且所述数据变量中保存有数据,则将数据变量中保存的所述第一数据发送至第二视图,以使所述第二视图根据所述第一数据渲染其子视图,并在所述第二视图对其子视图渲染完成之后,将所述状态参数重置为初始值。3.根据权利要求2所述的方法,其特征在于,所述预设最大值为所述监控模块在接收到所述第一视图发送的携带第一数据的事件时调整自身的状态参数和在接收到所述第二视图发送的事件时调整自身的状态参数之后,所述状态参数的值。4.根据权利要求1所述的方法,其特征在于,在监控模块接收到第一视图发送的携带第一数据的事件之前,所述方法还包括:当前界面中的第一视图通过自己的数据仓库store,向服务器发送第一数据请求;接收所述服务器根据所述第一数据请求返回的第一数据;根据所述第一数据对自身进行渲染,并将携带所述第一数据的事件发送至监控模块。5.根据权利要求1所述的方法,其特征在于,所述在接收到所述第一视图发送的携带第一数据的事件时,调整自身的状态参数,包括:在接收到所述第一视图发送的携带第一数据的事件时,若自身的状态参数为初始值,则将所述状态参数增加预设值变为第一预设值,若所述状态参数为所述第一预设值,则将所述状态参数增加预设值变为预设最大值。6.根据权利要求2所述的方法,其特征在于,在监控模块接收到第二视图发送的事件之前,所述方法还包括:当前界面中的第二视图通过自己的数据仓库store,向服务器发送第二数据请求;接收所述服务器根据所述第二数据请求返回的第二数据;根据所述第二数据对自身进行渲染,并发送事件至监控模块。7.根据权利要求2所述的方法,其特征在于,所述在接收到所述第二视图发送的事件时,调整自身的状态参数,包括:在接收到所述第二视图发送的事件时,若自身的状态参数为初始值,则将所述状态参数增加预设值变为第一预设值,若所述状态参数为所述第一预设值,则将所述状态参数增加预设值变为预设最大值。8.一种异步渲染模块的同步系统,其特征在于,包括:监控模块、当前界面中的第一视图和当前界面中的第二视图;所述监控模块,包括:第一监...
【专利技术属性】
技术研发人员:瞿宝明,
申请(专利权)人:滴滴中国科技有限公司,
类型:发明
国别省市:天津,12
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。