微信小程序开发实战-setData字段特别多时怎么办,试试动态遍历字段并提取赋值

概要:

小程序开发过程中,setData的双向绑定是必学的,本文通过对超多字段的动态赋值,深入讲解setData的用法。

需求场景

Page({
    data: {
        p1: !1,
        p2: "",
        p3: "",
        p4: "",
p5: "",

......很多字段


p50:""
},

字段特别的多,小程序设置值的时候有如下方法:

在更改setData下的变量时,直接写key名就可以了的,不用写this.data.属性,如下所示

一、使用key value

Page({
    data:{
        value:'hello'
    }
    this.setData({
    value:'修改的值'
    //错误写法:this.data.value:''
    //注意key的名称一定是data中的名称
})
})
setData的第二个参数是一个回调函数,在页面渲染完后执行。
this.setData({
      value:'hello'
    }, () => { //第二个参数
       console.log("在页面渲染完value后再执行");
    })

二、使用 中括号[]

this.setData({                                                            
 
  '对象.属性名':属性值, 
 
   ['对象.属性名']:属性值,
 
)}
//例子
this.setData({
 
  'obj.newName': '新添加的名字',
 
  'obj.name': '修改成盲盒',
 
  ['obj.height']: ' 修改了30',
 
})

对于上面几十个字段,这么set实在是不能忍,如何处理呢?

三、解决需求问题使用方法二

从接口提取数据后,通过遍历对象,将key 和value 提取

然后使用setData 赋值

直接上代码:

// 请求接口返回 data 对象
const data = e.Data;
const keys = Object.keys(data)


// 遍历key


keys.forEach(function (item,key) {
 n.setData({
    [item] : ddxxData[item]
 });
})

企业数字化转型是一场自我革新的艰苦探索

40家央企数字化转型路线图(2022版)

还在为XShell破解烦恼,试试Tabby

如何在 Jenkins Pipeline 中使用curl 并处理响应结果

点击链接看看吧 微信小程序开发教程

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

未来AI编程

共鸣===鼓励 打赏您随意

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值