微信小程序数组绑定使用案例(二)

一、数组事件绑定,事件传递数据

1.wxml

html 复制代码
<text>
  姓名:{{name}}
</text>
<block wx:for="{{list}}">
  <button bind:tap="nameClick2" data-name="{{item}}">修改:{{item}}</button>
</block>

2.js

javascript 复制代码
  /**
   * 页面的初始数据
   */
  data: {
    name: '张三',
    list: ['张三', '李四', '王五', '赵六'],
},
  //列表修改
  nameClick2(e) {
    var name = e.currentTarget.dataset.name;
    console.info(name);
    this.setData({
      'name': name
    });
  },

3.css 忽略

重点说明:

//微信小程序 data 数据单项绑定,setData方法修改属性并且渲染页面展示

// this.data.name='李四';

this.setData({

'name': '李四'

});

显示效果:

二、微信小程序 setData 修改对象

1.wxml

html 复制代码
<text>
  姓名:{{stu.name}},年龄:{{stu.age}}
</text>

<button bind:tap="ageClick">
  增加年龄
</button>

2.js

javascript 复制代码
  //修改数据三
  ageClick() {
    var stu = this.data.stu;
    console.info(stu.age);

    //方案1,修改整个对象
    // stu.age=stu.age+1;
    // this.setData({
    //   stu:stu
    // });

    //方案2,根据路径修改变量
    this.setData({
      'stu.age': stu.age + 1
    });

  },

3.css忽略

重点解读,根据路径修改对象:

//方案2,根据路径修改变量

this.setData({

'stu.age': stu.age + 1

});

三、微信小程序,setData 修改 数组中的属性

1.wxml

html 复制代码
<block wx:for="{{stulist}}">
  <view style="padding: 20px;border:1px solid bisque;">
    <text>
      姓名:{{item.name}},年龄:{{item.age}}
    </text>

    <button bind:tap="stulistClick" data-index="{{index}}">
      增加年龄
    </button>
  </view>
</block>

2.js

javascript 复制代码
  //修改数据 ,数组中的对象的属性
  stulistClick(e) {
    var index = e.currentTarget.dataset.index;
    var stulist = this.data.stulist;

    //修改 方案1
    //var stu = stulist[index];
    // stu.age = stu.age + 1;
    // this.setData({
    //   ['stulist[' + index + ']']: stu
    // });

    //方案2
    this.setData({
      ['stulist[' + index + '].age']: stulist[index].age + 1
    });
  },

3.css 代码忽略

重点整理:

//方案2

this.setData({

'stulist\[' + index + '\].age'\]: stulist\[index\].age + 1 }); 更多: [微信小程序数组绑定使用案例(一)](https://mp.csdn.net/mp_blog/creation/editor/140571776 "微信小程序数组绑定使用案例(一)") ### [input组件 type为nickname pc端获取不到这个绑定的值?](https://blog.csdn.net/u011127019/article/details/139532032 "input组件 type为nickname pc端获取不到这个绑定的值?") ### [微信小程序触屏事件_上划下划事件](https://blog.csdn.net/u011127019/article/details/136416707 "微信小程序触屏事件_上划下划事件")

相关推荐
00后程序员张1 天前
iOS 上架费用全解析 开发者账号、App 审核、工具使用与开心上架(Appuploader)免 Mac 成本优化指南
android·macos·ios·小程序·uni-app·cocoa·iphone
WenGyyyL1 天前
微信小程序开发——第三章:WXML 与 WXSS —— 小程序页面结构与样式设计
微信小程序·小程序
万岳科技系统开发1 天前
外卖小程序中的高并发处理:如何应对大流量订单的挑战
算法·小程序·开源
WenGyyyL1 天前
微信小程序开发——第四章:小程序的组件与模块化开发
微信小程序·小程序·notepad++
说私域1 天前
社群时代下的商业变革:“开源AI智能名片链动2+1模式S2B2C商城小程序”的应用与影响
人工智能·小程序·开源
毕设源码-朱学姐1 天前
【开题答辩全过程】以 基于Java的医务室病历管理小程序为例,包含答辩的问题和答案
java·开发语言·小程序
文人sec1 天前
微信小程序minium自动化测试SOP
微信小程序·小程序
克里斯蒂亚诺更新1 天前
微信小程序 点击地图后弹出一个模态框
微信小程序·小程序·notepad++
云起SAAS1 天前
患者随访管理抖音快手微信小程序看广告流量主开源
微信小程序·小程序·ai编程·看广告变现轻·患者随访管理
2501_916008891 天前
HTTPS 请求抓包,从原理到落地排查的工程化指南(Charles / tcpdump / Wireshark / Sniffmaster)
ios·小程序·https·uni-app·wireshark·iphone·tcpdump