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

微信小程序数组绑定案例,修改数组中的值

1.Wxml 代码

html 复制代码
<view class="list">
  <view class="item {{item.ischeck?'active':''}}" wx:for="{{list}}">
    <view class="title">{{item.name}} <text>({{item.id}})</text></view>
    <view class="btndiv">
      <button>上移动</button>
      <button bind:tap="downClick" data-index="{{index}}">下移动</button>
      <button bind:tap="delClick" data-index="{{index}}">删除</button>
      <checkbox checked="{{item.ischeck}}" bind:tap="checkClick" data-index="{{index}}">选中</checkbox>
    </view>
  </view>
</view>

2.js 代码

javascript 复制代码
Page({

  /**
   * 页面的初始数据
   */
  data: {
    list: [{
        id: 1,
        name: '张三',
        ischeck: true
      },
      {
        id: 2,
        name: '李四'
      },
      {
        id: 3,
        name: '王五'
      },
      {
        id: 4,
        name: '赵六'
      },
    ]
  },
  //选中点击事件
  checkClick(e) {
    var index = e.currentTarget.dataset.index;
    var list = this.data.list;
    // console.info(index);
    //修改页面
    this.setData({
      ['list[' + index + '].ischeck']: !list[index].ischeck
    });
  },
  //删除
  delClick(e) {
    var index = e.currentTarget.dataset.index;
    var list = this.data.list;
    list.splice(index, 1);
    this.setData({
      list: list
    });
  },
  //下移动
  downClick(e) {
    var index = e.currentTarget.dataset.index;
    var list = this.data.list;
    var next = index + 1;
    if (next == list.length) { //临界值
      //next=0;
      return;
    }
    //交换位置
    var temp = list[index];
    list[index] = list[next];
    list[next] = temp;
    this.setData({
      list: list
    });
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  }
})

3.css代码忽略

重点解读:可以使用js对象路径方式,修改变量并重新绘制页面

this.setData({

'list\[' + index + '.ischeck']: !listindex.ischeck

});

实现效果:

更多:

input组件 type为nickname pc端获取不到这个绑定的值?

微信小程序触屏事件_上划下划事件

微信小程序事件绑定

相关推荐
数字游民95273 小时前
史诗级更新:微信小程序支持个人主体接入虚拟支付
ai·微信小程序·小程序·opc·数字游民9527
smartpi_ai4 小时前
语音模块与主控 MCU 串口对接实战:协议设计六要点,联调少走一半弯路
人工智能·小程序·语音识别
禾高网络4 小时前
养老系统开发:背景、架构与养老行业展望
java·大数据·人工智能·小程序·架构
lhldsg7 小时前
相册印刷实战指南:从设计规范到系统落地全流程解析
java·小程序·架构·设计规范
汤姆yu8 小时前
基于微信小程序的晚托机构管理系统
微信小程序·小程序·晚托
博、、8 小时前
酒馆预约系统开发实战:从需求分析到上线部署指南
小程序·需求分析
zww89491118 小时前
相册印刷项目实战指南:从设计到成品的完整技术流程
java·小程序·eclipse
2501_915918419 小时前
Flutter项目配置iOS混淆的详细步骤与工具推荐
android·flutter·ios·小程序·uni-app·cocoa·iphone
这是程序猿10 小时前
高校宿舍信息管理系统小程序
java·小程序·毕业设计
凡泰AI10 小时前
如何通过小程序多端框架,让一个小程序同时运行在iOS、安卓、鸿蒙和微信客户端,实现开发层面的降本增效
android·ios·微信小程序·小程序·harmonyos