5176关注18583浏览
setData() 的文档中说:
单次设置的数据不能超过1024kB,请尽量避免一次设置过多的数据。
的确是这样的,当单次设置的数据过大时会失败。
但这种情况怎么避免呢?
想过分批赋值给数组或对象:
let i = 3;
|
但语法是错的。
文档中还说:
其中 key 可以非常灵活,以数据路径的形式给出,如 array[2].message,a.b.c.d,并且不需要在 this.data 中预先定义。
试验了一下
|
语法没错,但显然 i 只作为一个字符串,而不是变量。
又试了一些拼字符串的方式,语法上都不对
|
虽然可以使用这个方式解决变量问题,但 1M 的限制还是在的(没试验,但理论上设置的还是总数据)
const obj let i = 3 obj[i] = 'abc' this.setData(arr) |
所以想
-
至过去的我
2044人对此回答表示赞同
我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多> -
雨天
10人对此回答表示赞同
已经解决了这个问题,谢谢各位。
展开100回复分享发布于 6年前评论(0)
收起评论
-
梨fa
9人对此回答表示赞同
用户往上拉,然后获取后端的数据 push进数组,再setData一遍,上次有人提到过这种问题,他是往上面拉一页,就删掉最前面那一页,最后不知道实现没有,还有数据太大建议先存储再缓存里,然后拿,超出太多也没办法了,我的数据6w多条。只加载了200多条。
展开90回复分享发布于 6年前评论(0)
收起评论
-
Asher
9人对此回答表示赞同
内存是很宝贵的,加载后面的数据成功后最好把前面的数据删除了。
展开90回复分享发布于 6年前评论(0)
收起评论