[发明专利]一种用于加载动画防止频繁闪烁的方法有效
| 申请号: | 202210911221.9 | 申请日: | 2022-07-30 |
| 公开(公告)号: | CN115237502B | 公开(公告)日: | 2023-08-29 |
| 发明(设计)人: | 郭富声 | 申请(专利权)人: | 中邮消费金融有限公司 |
| 主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F9/451 |
| 代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 陈小娟 |
| 地址: | 510000 广东省广州市南沙区海滨路17*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 用于 加载 动画 防止 频繁 闪烁 方法 | ||
本发明公开了一种用于加载动画防止频繁闪烁的方法,包括如下步骤:步骤1,引入计数器;步骤2,将隐藏加载动画方法放在宏队列;利用事件循环机制,将展示加载动画方法和接口请求方法放在主线程,将隐藏加载动画方法放在宏队列;步骤3,利用计数器减少展示和隐藏加载动画次数;当进入接口处理方法时,如果计数器为0时,执行一次展示加载动画方法;当执行宏队列任务时,如果计数器为0时,执行一次隐藏加载动画方法。本发明以减少隐藏加载动画方法执行次数来作为技术优化方向,能够大幅减少多余事件执行次数,性能和用户体验提升明显。
技术领域
本发明属于软件管理的技术领域,具体涉及一种用于加载动画防止频繁闪烁的方法。
背景技术
目前在处理多接口调用的场景中,互联网产品普遍存在加载动画频繁闪烁的问题。
什么是闪烁,就是在进入界面时,对于每个展示内容,都存在着展示加载动画及隐藏加载动画,进入首页一共请求多个接口,每个接口响应时间有快有慢,这也是造成加载动画闪烁的原因。
再之,路由跳转指由一个地址跳转到另一个地址,导致页面重新渲染。当连续请求的接口中间发生路由跳转,就不可避免地发生页面渲染和加载闪烁的情况;在请求访问过程中,由于请求访问该URL的主机有并发和连接数限制,浏览器会把当前请求放入队列中进行排队,因此造成请求阻塞,也是造成闪烁的原因;目前的处理方式是处理接口方法自定义maskflag,maskflag指泛指蒙层,在调用接口时可以设置maskflag为false隐藏加载动画,当连续请求的接口中,其中某些接口设置maskflag为false,这也是造成加载动画闪烁的原因。
为此,如何消除动画频繁闪烁是在各种软件应用中需要面临的一个问题。
发明内容
为解决上述问题,本发明的首要目的在于提供一种用于加载动画防止频繁闪烁的方法,该方法是新型的前端接口处理的通用解决方案,在处理多接口调用的场景中,能够大幅减少加载动画的闪烁次数,解决了加载动画频繁闪烁的问题。
本发明是一种用于加载动画防止频繁闪烁的方法,该方法以减少隐藏加载动画方法执行次数来作为技术优化方向,能够大幅减少多余事件执行次数,性能和用户体验提升明显。
加载动画频繁闪烁主要是多次执行隐藏加载动画方法造成的,因此以减少隐藏加载动画方法执行次数来作为技术优化方向,
为实现上述目的,本发明的技术方案如下。
一种用于加载动画防止频繁闪烁的方法,该方法包括以下步骤:
步骤1,引入计数器;
初始化加载计数器为0,接口请求开始时+1,接口请求结束或者报错时-1。当计数器大于1展示加载动画,等于0隐藏加载动画。
步骤2,将隐藏加载动画方法放在宏队列;
利用事件循环机制,将展示加载动画方法和接口请求方法放在主线程,将隐藏加载动画方法放在宏队列。消息必须等待主线程多个接口请求消息处理完,再处理隐藏加载动画方法。
步骤3,利用计数器减少展示和隐藏加载动画次数。当进入接口处理方法时,如果计数器为0时,执行一次展示加载动画方法。当执行宏队列任务时,如果计数器为0时,执行一次隐藏加载动画方法。
进一步,步骤2中,利用函数setTimeout接受两个参数:待加入队列的消息和一个时间值,这个时间值默认为0,代表了消息被实际加入到队列的最小延迟时间。
如果队列中有其它消息,setTimeout消息必须等待其它消息处理完,再处理待加入队列的消息。
进一步,步骤3中,利用计数器减少showMask()和hideMask()次数,
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中邮消费金融有限公司,未经中邮消费金融有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210911221.9/2.html,转载请声明来源钻瓜专利网。





