微信小程序> 微信小程序——数组对象的增删改查

微信小程序——数组对象的增删改查

浏览量:665 时间: 来源:北方的木

微信小程序——数组对象的增、删、改、查

1.模拟数据的初始化定义

data: {    type_name: '项目分类',    name_name: '项目名称',    type_sId: "",    name_sId: "",    NumberValue: "", //数量    ExplainValue: "", //情况说明    RepaiSlip: [] //定义空数组  },

2.数据的新增

RepairInfo_add: function() {//创建新增的方法    var obj = {};//新增一个空对象    //定义对象的属性及初始化    obj.oid = this.data.RepaiSlip.length + 1;//定义一个oid,用于根据数组自增    obj.otype_sId = this.data.type_sId;//测试数据    obj.oname_sId = this.data.name_sId;    obj.otype_name = this.data.type_name;    obj.oname_name = this.data.name_name;    obj.oNumberValue = this.data.NumberValue;    obj.oExplainValue = this.data.ExplainValue;    let RepaiSlip = this.data.RepaiSlip;        RepaiSlip.push(obj);//将对象添加到数组对象    //给进行赋值    this.setData({      RepaiSlip,    })  },

小程序
2.数据的删除

前台按钮绑定删除事件

view wx:for="{{RepaiSlip}}" wx:for-index="key" wx:key="index"  wx:for-item="item"  style="height:50rpx;margin-top:15rpx"        view class="cross_column"          input disabled="true" value="{{item.oid}}.{{item.oname_name}}({{item.otype_name}})*{{item.oNumberValue}}"/input          text class="text_update" data-oid="{{item.oid}}" bindtap="edit_bind"编辑/text          text class="text_update" data-oid="{{item.oid}}" bindtap="del_bind"删除/text        /view      /view

后台根据绑定的oid进行删除

  // 删除按钮事件  del_bind: function(e) {    //取出要删除数据的oid    var vOid = e.currentTarget.dataset.oid;    var RepaiSlip = this.data.RepaiSlip;    //从oid的前一个位置开始删除一位    RepaiSlip.splice(vOid - 1, 1);    console.log(RepaiSlip);    this.setData({      RepaiSlip    })  },

3.数据的修改
前台同上面一样,后台调用点击事件

 // 编辑按钮事件  edit_bind: function(e) {    var vOid = e.currentTarget.dataset.oid;//获取选择行的id    var RepaiSlip = this.data.RepaiSlip    const length = RepaiSlip.length    if (vOid) {      for (let i = 0; i = length - 1; i++) {        if (vOid == RepaiSlip[i].oid) {//找到后进行页面跳转          wx.navigateTo({            url: 'RepairInfo?JsonData=' + JSON.stringify(RepaiSlip[i])          })        } else {          console.log("没找到结果")        }      }    }  },

修改页面接收赋值

  onLoad: function(options) {    if (options.JsonData != undefined) {      var vData = JSON.parse(options.JsonData)//将传过来的json字符串转换为json数组      this.setData({//赋值        type_sId: vData.otype_sId,        name_sId: vData.oname_sId,        type_name: vData.otype_name,        name_name: vData.oname_name,        NumberValue: vData.oNumberValue,        ExplainValue: vData.oExplainValue      })    }  },

4.数据的查询
根据数组的唯一标识循环对比查询

 var vOid = e.currentTarget.dataset.oid;//获取选择行的id        var RepaiSlip = this.data.RepaiSlip        const length = RepaiSlip.length        if (vOid) {          for (let i = 0; i = length - 1; i++) {            if (vOid == RepaiSlip[i].oid) {//找到后进行页面跳转              wx.navigateTo({                url: 'RepairInfo?JsonData=' + JSON.stringify(RepaiSlip[i])              })            } else {              console.log("没找到结果")            }          }        }

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎