收藏
回答

setData数据过大导致渲染卡顿怎么解决?

要修改数组中的每一个元素的一个属性,当数组数据量很大的时候,用setData对数组进行整体赋值,页面渲染会有卡顿延迟该怎么解决。

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

2 个回答

  • 默
    01-21

    字符串只需更新需要变更数据内容就行

    let that = this;
    let index = 5;
    let currentStr = "list[" + index + "].name";
    that.setData({
      [currentStr ]: "嘿嘿"
      })
    
    01-21
    有用
    回复 5
    • shigure
      shigure
      01-21
      数组里的所有元素都需要修改,不单单是修改某一个
      01-21
      回复
    • 默
      01-21回复shigure
      你不知道循环是吧?  循环设置index索引 去更新对应的索引字符不就行了吗
      01-21
      回复
    • Yugene
      Yugene
      06-04回复
      楼主说的是解决数据量过大的卡顿问题,不是怎么修改数据...
      06-04
      回复
    • 默
      06-04回复Yugene
      哦 有时间你可以去仔细阅读下我说的内容发的代码
      06-04
      回复
    • Yugene
      Yugene
      06-04回复
      sorry没仔细看你的代码就发表意见,我错了---
      06-04
      回复
  • |G.XIAO|
    |G.XIAO|
    01-21

    按模块继续拆解,按需更新

    01-21
    有用
    回复 2
    • shigure
      shigure
      01-21
      是把每个元素的属性单独拆分存一个数组进行更新这样吗
      01-21
      回复
    • |G.XIAO|
      |G.XIAO|
      01-21回复shigure
      对页面元素进行更细粒度的拆解
      01-21
      回复
登录 后发表内容
问题标签