setData性能问题
发布于 5 年前 作者 xia24 20211 次浏览 来自 问答

有一个需求:小程序的页面滚动距离超过指定位置时,将一个搜索框浮现出来,小于指定位置时,则影藏起来,我现在的做法是,页面onPageScroll回调函数中,实时检测是否滚动到对应的位置,然后用setData改变搜索框的样式,控制搜索所显示还是隐藏。

但是在实际测试过程中发现,当页面滚动到指定位置时,要等上好几秒,搜索框才会显示出来,从setData执行完到界面UI刷,有好几秒的延迟,请问这要如何处理?请各位大牛帮忙提供解决方法

4 回复

理论上setData不应该会有好几秒这么长的延迟的,烦请提供一下机型,基础库版本和能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html),我们这边定位一下问题。

楼主解决了吗?安卓机一直有延迟问题?

这个问题,我有个建议,setdata外层在加一层判断,searchTop当前值和要设置的值一样就不要进行setdata了。

的确有这个问题,onPageScroll中加入节流控制,setData后,会延长好几秒才会更新

回到顶部