优化this.setData()性能体验:修改data中数据的三种解决方案

2025-03-03
来源:网络整理

在正常情况下

page({ data:{ s1:{a:"",b:"b"} }, changeData:function(e){ var cData=this.data.s1; cData.a="1";//先修改json值 this.setData({ //再set值 s1:cData }) } })

这种方法。()的性能经验很差

在开发微信小程序时,使用和修改数据中的数据时,各种情况的解决方案如下:

data:{ code:'9527', baseInfo:{ name:'夏尔', age:19 }, family:[{ name:'大头爸爸', age:'46' },{ name:'美丽妈妈', age:'45' }] }

1。直接修改数据的某些属性

this.setData({ code:'007' })

2。修改数据中数组或对象的属性

this.setData({ 'baseInfo.age':24 })

3。根据条件(关键点)的选择性更改

假设需要根据某种情况下的条件更改某个值的某个属性,则需要将属性转换为字符串,然后将其包装在括号中。

//假设更改了相应的属性值

var temp_str='this.data.family['+index+'].age'; this.setData({ [temp_str]:44 });

—————————————————

版权声明:本文是CSDN博客作者“ It Owl”的原始文章。它遵循CC 4.0 BY-SA版权协议。重印时,请附加原始源链接和此语句。

原始链接:

分享