收藏
回答

能不能给一个渲染结束后的回调方法?

问题模块
API和组件

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

最后一次编辑于  2017-09-21  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

7 个回答

  • 赵青山
    赵青山
    2017-09-21

    setData() 参数格式

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

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

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


    2017-09-21
    赞同
    回复
  • Silent、
    Silent、
    2017-09-21

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

    2017-09-21
    赞同
    回复
  • 黄思程
    黄思程
    2017-09-21

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

    2017-09-21
    赞同
    回复
  • Silent、
    Silent、
    2017-09-21

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

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

    2017-09-21
    赞同
    回复
  • LastLeaf
    LastLeaf
    2017-09-22

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


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

    2017-09-22
    赞同
    回复
  • Silent、
    Silent、
    2017-09-22

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

    2017-09-22
    赞同
    回复
  • LastLeaf
    LastLeaf
    2017-09-22

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

    2017-09-22
    赞同
    回复