我们是做直播的,有礼物栏,礼物数量很多,大概50个左右,因为cover-view不支持swiper我们只能一次性加载,用overflow:scroll来滚动。
但是在弹起礼物栏的时候,每次弹起都会卡一阵,这很头疼。
cover-view不支持swiper的情况下,
于是尝试自己写一个swiper左右滑动,这样一次最多加载8个礼物。
但自己利用touch模拟滑动后,在模拟器还挺流畅,在真机就发现卡的不要不要的。
仅仅尝试将礼物栏跟随手指一起左右滑动这个功能,就发现,手指滑动后,礼物栏卡住了,要过一会才动。。。。。彻底绝望
ps: 小程序会因为嵌套层次太多,导致渲染卡顿,所以我在优化礼物栏这一块的时候,已经把它提到最外层,到每一页的wrap节点嵌套层次只有三层
另外,在礼物栏选中礼物功能时,也会出现点击后过一会才渲染出选中状态,这里除了通过上面减少层级,还另外变态的加了一层虚拟礼物栏,专门用来模拟礼物的选中,做到在选中时,只渲染虚拟礼物层,实际的礼物层不渲染,这样就大概的可以做到点击就选中,延迟不会很高
所以建议官方,增加cover-image的懒加载,增加cover-view的swiper
如果可以的话希望能暴露出某个节点渲染完毕后的回调
可以用于测试的代码片段,一定要在真机上测试: