我们的Web App在某一时点会大量请求服务器,导致浏览器上提示加载的图标一直来回闪动:
加载中->完成加载->加载中->完成加载->加载中->完成加载->加载中->完成加载->加载中->完成加载->加载中->完成加载->加载中->完成加载->加载中->完成加载->加载中->完成加载->加载中->完成加载->加载中->完成加载->加载中->完成加载->加载中->完成加载->加载中->完成加载->
来来回回要有几十次,让人感觉很不爽。
我们提出一种可能的解决方案,就是人为做一个操作,比如一个方法startLoading,这时浏览器就会一直处在加载状态中,如图示:
之后,我们可以用另一个方法,比如finishLoading告诉浏览器,我们结束了。之后你就按自己的方式工作吧。
请问,这个该怎么实现?
多谢
PS:合并请求之类的在我们这里都不是可行的解决方案,因为业务要求的特殊性,必须加载N多次,最多可能上百次。每次之间间隔是毫秒级的。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
试试客户端向服务器端一个特别的API发送请求,这个API收到请求后把它挂起来,然后客户端判断所有的其他请求都结束后,手动终止这个请求。。。
难道不可以Promise.all()吗?
一般不是最后一步的完成加载之后调用函数关闭这个么?我们公司的也有比较复杂的流程,在触发加载事件时,先执行显示这个加载效果的方法,再进行正常的业务操作,加载东西什么的,然后确认是最后一步了,再隐藏或删除加载效果。如果异步加载的话,就最后添加一个回调咯。
直接用ajax加载,浏览器不会有加载中的提示哦