微信小程序使用setData修改数组中的指定下标的属性值

这篇具有很好参考价值的文章主要介绍了微信小程序使用setData修改数组中的指定下标的属性值。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

因为小程序中分有逻辑层和渲染层等。所以需要用setdata函数,渲染到视图界面。普通的修改属性是通过this.setData({aa:true})的方法设置,但是本人遇到一种情况,需要通过下标区改变数组某一项中的某属性的值,方法如下:
结构:

// list中的标签按钮,选中一个亮起、再次点击灯灭的效果
<view class="'r_no' {{ item.checked==true ? 'active_r_no' :''}}" 
                    wx:for="{{rightRoomList}}" wx:key="index" 
                    data-obj="{{item}}" data-index="{{index}}"
                    bindtap="chooseRoom"
   >{{item.name}}</view>

js:

roomData:[
            {id:238, name: 'B1',children:[{id: 268,name:'B1_1',checked: false},{id: 269,name:'B1_2',checked: false},{id: 280,name:'B1_3',checked: false},{id: 281,name:'B1_4',checked: false},{id: 282,name:'B1_5',checked: false},{id: 283,name:'B1_6',checked: false},{id: 284,name:'B1_7',checked: false}]},
            {id:243, name: 'F2',children:[{id: 291,name:'F2_1',checked: false},{id: 292,name:'F2_2',checked: false},{id: 293,name:'F2_3',checked: false},{id: 294,name:'F2_4',checked: false},{id: 295,name:'F2_4',checked: false}]},
],
chooseRoom(e){
        let index = e.currentTarget.dataset.index
        let checkProp = "rightRoomList[" + index + "].checked"
        if(this.data.rightRoomList[index].checked){
            this.setData({
                [checkProp]: false
            })
        }else{
            this.setData({
                [checkProp]: true
            })
        }
 }

备注:通过let checkProp = "rightRoomList[" + index + "].checked"获取点击的对应下标的标签的属性
打印如下
微信小程序数组下标,小程序,微信小程序,小程序,前端文章来源地址https://www.toymoban.com/news/detail-617303.html

到了这里,关于微信小程序使用setData修改数组中的指定下标的属性值的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序setData给数组赋值问题

    因为小程序中分有逻辑层和渲染层等。所以需要用setdata函数,渲染到视图界面。普通的修改属性是通过 this.setData({demo:true}) 的方法设置,但是本人遇到一种情况,需要通过下标区改变数组某一项中的某属性的值,方法如下: 1.有确定的下标情况下 2.没有确定的下标情况下

    2024年02月11日
    浏览(50)
  • 微信小程序this.setData给对象&数组动态赋值

    1. 固定属性赋值 wxml:  js: 这个时候页面上显示的是 hellow 当我们修改的时候有2种方案 2.动态属性赋值 wxml: js: 修改数组里对象的属性 通过es6模版字符串 `` 的方式 key 可以作为变量 wxml:  js: 循环修改 3.双向数据绑定 经过多次尝试提交 获取到的formData.title数据为空,据说加上

    2024年01月19日
    浏览(46)
  • 小程序setData修改数组和对象

    Page({   data: {     arrs:[       { text: \\\'0概率固定\\\', value: 0 },       { text: \\\'1累计固定\\\', value: 1 },       { text: \\\'2概率随机\\\', value: 2 },       { text: \\\'3概率赠送\\\', value: 3 },       { text: \\\'4保夹模式\\\', value: 4 },       { text: \\\'5累计随机\\\', value: 5 },  

    2024年02月09日
    浏览(36)
  • 微信小程序setData注意事项,使用方法

    1..微信小程序开发中,为了减少data和视图层数据表现不一致,全部采用setData方法修改值。 setData函数注意事项 1..直接修改 this.data 而不调用 this.setData 是无法改变页面的状态的,还会造成数据不一致。 2..单次设罟的数据不能超过1024kB,请尽量避免一次设罟过多的数据, 3..请

    2024年02月16日
    浏览(43)
  • 微信小程序 - 解决 setData() 无法修改 properties 数据的问题,修改子组件 properties 传递过来的数据(父级页面传入子组件的数据无法更新修改的问题,简洁快速解决方案!)

    当页面(父组件)传递给子组件属性时,需要使用 properties 属性接收,但遗憾的是后续无法对该属性下的数据进行更新数据。 本文实现了微信小程序开发中,解决子组件使用 properties 接收后,无法进行数据的编辑与更新问题, 简单来说,就是组件内部无法通过 setData 对 pro

    2024年02月16日
    浏览(80)
  • 微信小程序 - setData

    1、setData  函数用于将数据从逻辑层发送到视图层(异步),同时改变对应的  this.data  的值(同步)。 2、其中  key  可以以数据路径的形式给出,支持改变数组中的某一项或对象的某个属性,如  array[2].message , a.b.c.d ,并且不需要在 this.data 中预先定义。 3、直接修改 t

    2024年02月11日
    浏览(36)
  • 【微信开发】小程序this.setData({})中对普通字段、数组以及数组对象进行赋值,对数组对象进行操作

    前言:         之最近在开发一个系统的时候,this.setData总有时候会出问题,查了查资料,一下进行总结: 字段赋值; 数组静态赋值; 数组动态赋值; 对象数组动态赋值; 组对象进行操作         ① 末位加数据;         ② 中间或者开头加数据;         ③ 删除

    2024年02月08日
    浏览(46)
  • 微信小程序中this.data 和 this.setData

    在微信小程序中,this.data 和 this.setData 是两个用于处理数据的不同方式。 1、this.data:this.data 是一个对象,用于存储小程序页面的数据。当我们需要获取或修改页面的数据时,可以直接访问和操作 this.data 对象。例如,this.data.name 可以获取名为 name 的数据,this.data.name = ‘Jo

    2024年02月03日
    浏览(51)
  • 微信小程序之删除数组中的某一个数据

    方法一: 代码说明:先用findIndex()找到要删除的数据的下标index,当index!=-1的时候说明数组中存在这个数据,再用splice()来删除数据,splice(index,1)中的1是说只删除该下标对应的数据,如果省略1则会默认删除从index开始往后的所有数据 方法二: 1.如果你的数组是像这样的a:[\\\'1\\\'

    2024年02月12日
    浏览(41)
  • 微信小程序 修改三方组件中的自带样式

    众所周知,微信小程序会引用诸如vant,weiui等三方组件,当我们想要对组件自带样式进行修改的时候该怎么做呢? 1.在调试器中找到想要修改样式的组件的class类名,在对应的wxss中添加样式,此时样式未生效; 2.官方文档中提到可以在externalclass中添加一个类名暴露给父组件,

    2024年02月12日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包