微信小程序操作数组对象

navinfo: [{ ‘NavName‘: ‘定位‘, ‘NavIcon‘: ‘location‘, ‘NavIconSize‘: ‘22px‘, ‘IconColor‘: ‘#000‘, ‘IconCheckedColor‘: ‘#fff‘, ‘IsChecked‘: ‘0‘ },

{ ‘NavName‘: ‘电池‘, ‘NavIcon‘: ‘shopping-cart‘, ‘NavIconSize‘: ‘22px‘, ‘IconColor‘: ‘#000‘, ‘IconCheckedColor‘: ‘#fff‘, ‘IsChecked‘: ‘0‘ },

{ ‘NavName‘: ‘救援‘, ‘NavIcon‘: ‘phone-circle‘, ‘NavIconSize‘: ‘22px‘, ‘IconColor‘: ‘#000‘, ‘IconCheckedColor‘: ‘#fff‘, ‘IsChecked‘: ‘1‘ },

{ ‘NavName‘: ‘我的‘, ‘NavIcon‘: ‘manager‘, ‘NavIconSize‘: ‘22px‘, ‘IconColor‘: ‘#000‘, ‘IconCheckedColor‘: ‘#fff‘, ‘IsChecked‘: ‘0‘ }]

如上代码,需要修改navinfo数组里面的第一个对象{ ‘NavName‘: ‘定位‘, ‘NavIcon‘: ‘location‘, ‘NavIconSize‘: ‘22px‘, ‘IconColor‘: ‘#000‘, ‘IconCheckedColor‘: ‘#fff‘, ‘IsChecked‘: ‘0‘ },里的IsChecked为1,其他的子项的IsChecked属性修改为0,

代码:

 _onChange:function(e){

      let that=this;
      var _index=e.currentTarget.dataset.index;
      for (let nav in that.properties.NavInfo){
        if (nav == _index){
          that.setData({
            [‘NavInfo[‘ + nav + ‘].IsChecked‘]:1
          });
        }else{
          that.setData({
            [‘NavInfo[‘ + nav + ‘].IsChecked‘]: 0
          });
        }
      }
    }

以上函数中的e,由前端的data-index中获取,页面代码如下:

<view wx:for="{{NavInfo}}" wx:for-item="Item" style="">wx:key="*this" data-index="{{index}}" bindtap="_onChange" class="navItem">

原文地址:https://www.cnblogs.com/PiaoYu/p/11386159.html

时间: 2024-10-10 13:52:16

微信小程序操作数组对象的相关文章

微信小程序传数组(Json字符串)到Java后端

一:小程序端: wxml中代码: <!--index.wxml--> <view> <view> <button bindtap="onShow"> 调接口 </button> </view> </view> js中代码: //index.js //获取应用实例 const app = getApp() Page({ onShow:function(){ console.log('123456') le

微信小程序----关于变量对象data 和 前端wxml取后台js变量值

(一)页面变量对象data 对象data 有两个方面用途 第一,前端wxml的数据渲染是通过设置此对象中定义的变量进行关联展现的 第二,定义JS页面中的页面局部变量,使其整个页面中可使用或调用 对象data定义的变量支持各种数据类型,string,int,[],{} 第一.wxml数据渲染,只要通过设置data值(this.setData({...}))即可 如: wxml页面:detail对象中包含有TaskBillCode与BillDate两个属性 js页面: 第二.页面变量 定义: 存储:

微信小程序 setData 数组 渲染问题 删除之后的数组渲染不正确

list: [ { id: 0, mode: 1, src: 'https://s2.yzlcq.cn/images/10070.png', text: '0' }, { id: 1, mode: 1, src: 'https://s2.yzlcq.cn/images/10070.png', text: '1' }, { id: 2, mode: 1, src: 'https://s2.yzlcq.cn/images/10070.png', text: '2' } ], onDelete(e)

微信小程序学习Course 4-2 JS数组对象学习

微信小程序学习Course 3-2 JS数组对象学习 本节主要介绍JS中的数组. 3-2.1 数组的声明 数组声明的方式多种,如下例.一般我们可以先创建一个空数组,然后再填充. var names = [];//创建一个空数组 var names = ["sadad","asdsad"];//创建一个包含两个字符串的数组 var names = new Array(3);//创建一个包含三个元素的数组 3-2.2 数组的增添 数组有多种增添方式,一种是栈方式,另一种

微信小程序基于腾讯云对象存储的图片上传

在使用腾讯云对象存储之前,公司一直使用的是传统的FTP的上传模式,而随着用户量的不断增加,FTP所暴露出来的问题也越来越多,1.传输效率低,上传速度慢.2.时常有上传其他文件来攻击服务器,安全上得不到保障.所以我们在经过慎重考虑觉得使用第三方的云存储服务. 在最开始的时候我们在腾讯云与阿里云中选择,最终我们选择腾讯云,腾讯云在文件上传用时方面的性能比较突出,文件越大表现越好:在下载用时方面表现略优于阿里云:文件删除用时方面总体速度略逊于,但在不同大小文件删除用时上都比较稳定.当然这与我们主要用于

微信小程序setData复杂数组的更新、删除、添加、拼接

众所周知,微信小程序里所有对数据的修改只有在setData里修改才会在页面上渲染.在此分享小程序里复杂数组的更新.删除.添加.拼接 初始数据 数组嵌套对象 data: { cartList = [{ id: 1, goods: {id: 1, name: 'wechat'}, checked: true }, { id: 2, goods: {}, checked: false }, { id: 3, goods: {}, checked: true }] }, 索引部分删除 1 let ind

微信小程序的生命周期和APP对象的使用

1.生命周期和APP对象的使用: //app.js App({ onLaunch: function () { //调用API从本地缓存中获取数据 var logs = wx.getStorageSync('logs') || [] logs.unshift(Date.now()) wx.setStorageSync('logs', logs) }, onShow: function() { console.log("onShow") }, onHide: function() { c

微信小程序Page对象重写

关于重写微信小程序Page对象如下: let orgainPage = Page; // 保存原本的Page对象 let basePage = function (data) { // 生成初始data,如果页面已经有该值不在重新赋值 if (typeof data.data.dataVal === 'undefined') { data.data.dataVal = '具体值'; } // 重写onLoad默认执行一些初始事件 let orgainOnLoad = data.onLoad; d

图解微信小程序---调用API操作步骤

图解微信小程序---调用API操作步骤 什么是API API(Application Programming Interface,应用程序编程接口:是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节. 通俗的讲API就是接口,就是通道,负责一个程序和其他软件的沟通,本质是预先定义的函数. API通常是以Http的形式提供,它隐藏的含义就是,只要你符合我定义的标准,你就可以来使用我. 注册账号 填写注册信息 登陆 管