收藏
回答

setData加载太多条数据报错

做上啦加载更多的时候 setData加载太多条数据报错  Dom limit exceeded, please check if there's any mistake you've made.




如果超过一定长度删除的话前面页面展示也不友好  滚动条会永远在底部

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

14 个回答

  • 小程序技术专员-june
    小程序技术专员-june
    2018-01-05

    滚动条跟这里的更新多少条无关,属于其他的逻辑。


    使用 this.setData({ 'list[1]': {} }) 可以追加/更新数组项。

    2018-01-05
    有用
    回复 1
    • 高淑珍
      高淑珍
      2018-09-07

      还是会炸

      2018-09-07
      回复
  • 小程序技术专员-june
    小程序技术专员-june
    2018-01-05

    可以尝试用 this.setData({ 'list[1]': {} }) 这种方法来更新数组的单项,而不是将列表放到setData中。

    2018-01-05
    有用
    回复
  • 小程序技术专员-june
    小程序技术专员-june
    2018-01-05

    setData这里有数据限制,可以尝试分批更新,不要一次性更新过多数据。

    2018-01-05
    有用
    回复
  • k.
    k.
    2018-03-07

    应该和你渲染页面时候有关系,我这个方法只是更改了数据的setData的方式。

    找了个网址,你自己看看:http://www.wxapp-union.com/forum.php?mod=viewthread&tid=4123

    2018-03-07
    有用
    回复
  • 孙少林
    孙少林
    2018-03-07

    @k.   你好,用了你的方法,但是还会报错Dom limit exceeded啊,有没有什么要注意的点啊。

    2018-03-07
    有用
    回复
  • k.
    k.
    2018-03-05

    不完整吗?res变量就是你请求到的数据对象

    2018-03-05
    有用
    回复
  • 2018-03-03


    @k. 能把整个方法贴出来吗?

    2018-03-03
    有用
    回复
  • 朱成昊
    朱成昊
    2018-01-09

    @k.    666,学习了,谢谢~

    2018-01-09
    有用
    回复
  • 红色星星
    红色星星
    2018-01-08

    mark一下,按理说如果在wxml中循环渲染指定wx:key的话,不应该出现这个问题吧?

    2018-01-08
    有用
    回复
  • k.
    k.
    2018-01-06

    不知道你解决没有,我解决了,贴一下代码


              const obj = {};

              let j = 0;

              res = res.data.data;

              //赋值至obj对象

              for (let i = list.length; i < (list.length + res.length);i++){

                obj[`list[${i}]`] = res[j];

                j++;

              }

              // 追加进data

              that.setData(obj);




    2018-01-06
    有用
    回复 1
    • 高淑珍
      高淑珍
      2018-09-07

      加方括号,但是还是会炸

      2018-09-07
      回复

正在加载...

登录 后发表内容