能不能给一个渲染结束后的回调方法?
发布于 5 年前 作者 gyu 13784 次浏览 来自 问答

在做srcoll-view的下拉刷新得到数据后要把scrolltop固定到之前的位置,希望给一个列表渲染完成后的回调,否则定位处理起来太过于麻烦,且体验性不好,还是说有其他方法可以解决吗?

7 回复

你是在callback时候去update scroll-top吗? 能否给个demo代码看看

每次请求所产生的数据渲染出来的内容高度都是变化的,而节点的height是固定的,请问有什么方法来推定吗?谢谢

wx.createSelectorQuery()这个方法里面能把scrollheight给加上去

这个目前考虑应该不会加。其实你可以靠内部节点的height来推定scrollHeight的。

那渲染出来之后就必须得做createSelectorQuery才能拿到高度。

刚刚试过,setdata会出现我没有渲染完毕就已经执行了回调。需要加上setTimeout才行

是的,在callback时候去处理scroll-top,不过现在已经放弃使用scrolltop来定位,改成使用scroll-into-view来定位,只是bindscrolltoupper多次执行的问题感觉好困扰。

还有个小意见,如果wx.createSelectorQuery()这个方法里面能把scrollheight给加上去,那么用scrolltop来定位就方便很多了。

setData() 参数格式

字段类型必填描述最低版本
dataObject这次要改变的数据
callbackFunction回调函数1.5.0

object 以 key,value 的形式表示将 this.data 中的 key 对应的值改变成 value。 callback 是一个回调函数,在这次setData对界面渲染完毕后调用。

其中 key 可以非常灵活,以数据路径的形式给出,如 array[2].messagea.b.c.d,并且不需要在 this.data 中预先定义。

回到顶部