欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

小程序数据量过大问题

程序员文章站 2024-01-26 21:58:10
...

setdata 官方描述

setData 理解

  • setData 函数用于将数据从逻辑层发送到视图层(异步)
  • this.data 的值(同步)
  • 直接修改 this.data 而不调用 this.setData 是无法改变页面的状态的,还会造成数据不一致。
  • 仅支持设置可 JSON 化的数据。
  • 单次设置的数据不能超过1024kB,请尽量避免一次设置过多的数据。请不要把 data 中任何一项的 value 设为 undefined ,否则这一项将不被设置并可能遗留一些潜在问题。

数据量过大 如何更新

业务场景: 页面的数据量非常大 一个数组 交互时只改变 其中一个值 如果我们每次交互 都要重新 setdata 那么页面会非常卡顿

如何解决: 我们改那个值 就更行那个值

  • 数据结构
data: {
    user_info:{
      name: 'li',
      age: 10
    },
    cars:['nio', 'bmw', 'wolks']
},
  • 更改一 、[‘字符串’] es6语法 动态改变 键名
this.setData({
      ['user_info.age']: 20,
      ['cars[0]']: 'tesla'
})
  • 更改 二、 常规操作 数据量大时 不推荐
var temp = this.data.cars
    temp[0] = 'volvo'
    
    this.setData({
      cars: temp
    })
  • 更改三 、 本质上和第一种 一样 这个是静态 第一种是动态的
var temp = this.data.cars
    temp[0] = 'volvo'
    
    this.setData({
      cars: temp
    })
相关标签: 小程序