小程序如何修改data中对象或数组的属性

本文详细介绍在小程序中如何正确地为data中的数据赋值,并对比了不同赋值方式的效果。通过实例,展示了使用setData方法更新data内数组元素的具体语法,以及直接修改data属性为何不会触发页面重绘的原因。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

data中定义变量 

data: {
    address:'',
    markers: [{
      id: 1,
      latitude: '',
      longitude: '',
      name: 'T.I.T 创意园'
    }],
}

给data中的数据赋值 

 onLoad: function (t) {
    this.setData({
      address: '深圳市科技园',

       //正确案例,能真正的更改data里面的值并先更改data里面的值再重新渲染页面
      'markers[0].latitude' : 1111,
      'markers[0].latitude' : 2222,

      // 错误案例
      // markers[0].latitude : 1111,
      // markers[0].longitude : 2222,
    });
    
     //也能更改data中的markers[0].latitude和markers[0].longitude,更改完后并不会重新渲染页面,如果该页面加载需要这个数据赋值再重新渲染,这种方式便不可取
     // this.data.markers[0].latitude = 1111;
    // this.data.markers[0].longitude = 2222;
    console.log(this.data.markers[0].longitude);
  },

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值