收藏
回答

Recycle-View ctx.update() 和 this.setData()问题?

当原来列表数据有20条,调用Recycle-View ctx.update(0, current_list) 更新数据,如果current_list只有4条(不满20)时,只能更新前几条,有无办法实现类似setData({})效果

this.setData({ 
   recycleList: current_list
})


请问,有何解决方案?

回答关注问题邀请回答
收藏

3 个回答

  • 雪峰学华
    雪峰学华
    2021-10-17

    关注,正在学习研究 recycle-view

    2021-10-17
    有用
    回复
  • 2021-07-31
    this.ctx.splice(0, this.data.recycleList.length,current_list)
    
    


    用这样的方式不知道是不是最佳实践。虽然效果能满足。


    2021-07-31
    有用
    回复 3
    • Youngwell
      Youngwell
      2021-08-30
      请问你是要实现:先清空列表数据,然后再给列表赋值current_list吗?我也有这样的需求,但是用这个splice实现不了,并没有清空列表中数据,这个真的坑
      2021-08-30
      回复
    • Youngwell
      Youngwell
      2021-08-30回复Youngwell
      解决了,this.data.recycleList.length取到的长度并不是列表数据的真实长度,我把这个length改为了100000000000,就可以了,真坑
      2021-08-30
      回复
    • 雪峰学华
      雪峰学华
      2021-10-17
      搞定了吗?
      2021-10-17
      回复
  • H1HAO 🇨🇳
    H1HAO 🇨🇳
    2021-07-31

    你这个应该是赋值失败了,在方法里面你当前的this指向已经变更了,建议在方法最上方定义一个var that = this 然后 that.setData

    2021-07-31
    有用
    回复 2
    • 2021-07-31
      无问题。可以赋值。这个不是重点。 请问:this.ctx.splice(0, this.data.recycleList.length,current_list)
      是不是最佳实践。
      2021-07-31
      回复
    • H1HAO 🇨🇳
      H1HAO 🇨🇳
      2021-08-02回复
      数组.splice(第几个下标开始,排除的数量)
      2021-08-02
      回复
登录 后发表内容