首页 > 淘宝京东首页刷新原理

淘宝京东首页刷新原理

背景:
1、淘宝京东的首页不同模块,是异步调用不同接口返回数据。

问题:
1、异步调用时,难道是返回一个数据,全局刷新一下数据?局部刷新数据(局部刷新发现有显示不出来情况)?
2、还是等全部回来才刷新?怎么等全部回来?


阿里已经开源了他们的Weex前端库,这也是一个用Virtual DOMJs库,后端的数据传递到前端时,Js即把数据渲染到Virtual DOM里,之后通过Virtual DOM与真实的HTML DOM进行比对,然后只对有修改的DOM进行更新,把对前端性能的影响降到最低。


呃,你问的到底是 iOS 还是网页,怎么楼上两位说的都是网页的事 = =

iOS 的话,一般返回一个数据刷新对应的部分就可以。更新 view 的刷新局部,更新 tableView 的 reload 一下就行,因为有重用所以不会卡…… 不用等全部回来才刷新。


这个要具体分析,因为如果每次接口返回就去更新DOM的话会触发的layer的重新计算比较消耗性能,所以最好的是等同个模块的所以数据返回后统一渲染,这也就意味着网络等待要长一点。所以要综合考虑,现在常见的做法就是一次渲染,后期的网络请求只涉及到数据的更新不设计的DOM的更改。就像现在有些页面就去看到的都是写空白的框架然后毛毛填充内容

【热门文章】
【热门文章】