微信小程序——修改data里面数组某一个值

比如我现在有个data数据如下:

data: {
  playIndex: null,
  courseList: [{
    videoId: ‘0‘,
    isPlaying: false,
  }, {
    videoId: ‘1‘,
    isPlaying: false,
  }]
},

我现在想要修改courseList里面的isPlaying的值该怎么做呢?

var thisIdx = e.currentTarget.dataset.index;
var playStatus = "courseList[" + thisIdx + "].isPlaying";
this.setData({
  [playStatus]:true });

里面的thisIdx表示你当前点击的是第几个。注意在拼接playStatus的时候需要有空格!!!然后用修改数据的时候用"[]"把上面的变量包起来,赋值即可。

原文地址:https://www.cnblogs.com/sese/p/9337545.html

时间: 2024-10-11 03:11:01

微信小程序——修改data里面数组某一个值的相关文章

微信小程序—修改日期

最近项目开发在做微信小程序项目,记录一下开发过程中用到的一些小东西,实现的是一个点击增加减小日期的小东西, 贴一下效果图 大概就是这个效果,可以点击减小日期,点击增大日期,也可以直接选择日期,相应的判断日期大小给出相应的提示. 贴一下代码 <!-- wxml --> <view class='order_process'> <view class='dateBox'> <view class='prev {{filterState1?"filter&qu

微信小程序开发(一)创建一个小程序Hello World!

开发微信小程序并不是很难,网上有很多小程序开发资料,尤其是微信官方的<小程序开发指南>最详细. 下面是我开发小程序的历程: 第一步,请前往https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html 微信开发者工具下载页面根据自己的操作系统下载对应的安装包进行安装. 第二步,打开微信开发者工具,选择新建小程序项目. 红框里面可以选择 测试号 .AppID可以自己去注册.小程序使用js开发的,所以有js开发经验的很快就可以入门并

微信小程序 this.data与this.setData

一.摘要 小程序中我们会经常使用到this.data与this.setData.其中this.data是用来获取页面data对象的,而this.setData是用来更新界面的.那么他们之间的区别与联系你真的搞懂了吗? 二.正文 this.data可以获取页面data对象,但是它返回的对象到底是新的对象还是仅仅只是一个引用呐.这个很关键,在日常开发中很可能因为不知道或者是自己的疏忽导致bug,而且很难排查原因.带着这个疑问我们来做一下试验.由于时间比较紧,博主就不单独写demo了,项目中可能有大量

微信小程序-修改单选框和复选框大小的方法

方法有两种: 一:采用css的zoom属性 zoom缩放会将元素保持在左上角,并且会有毛边,可能会稍稍改变元素原来的形状. 二:采用css3的transform:scale属性 zoom缩放会将元素保持在中间,不会改变元素原来的形状,但是可能会有稍稍的模糊. 整体来说zoom属性与transform:scale属性主要存在如下几点差异 1.zoom的缩放是相对于左上角的:而scale默认是居中缩放:2.zoom的缩放改变了元素占据的空间大小:而scale的缩放占据的原始尺寸不变,页面布局不会发生

微信小程序监听input输入并取值

小程序的事件分为两种,冒泡和非冒泡事件,像<form/>的submit事件,<input/>的input事件,<scroll-view/>的scroll事件等非冒泡事件,需要到组件的文档里去找,如下是我截图的一些常用的非冒泡事件 非冒泡事件:当一个组件上的事件被触发后,该事件不会向父节点传递. 想要实时监听input的输入只要使用bindinput就可以了, wxml: <input bindinput='watchPassWord' type='password

微信小程序开发(二)创建一个小程序页面

为了方便讲解,我们将上篇博客创建的小程序除了project.config.json和sitemap.json两个文件保留,其他全部删除(这两个文件存的是小程序的创建信息,删掉会有报错提示). 接下来我们创建如下文件,先不写内容. 写入如下代码: // app.js App({}) // 注册小程序 // index.js Page({}) // 注册页面 // app.json { "pages": [ "qrcode/index/index"  // 页面路径 ]

微信小程序 修改数据,并动态渲染页面;修改数组;

一.修改数据,并在页面动态渲染 this.setData({ txt: '12112' }) 二.修改数组 var rotateClassItem = 'rotateClass['+ index + ']'; that.setData({ [rotateClassItem]: !that.data.rotateClass[index] }) 原文地址:https://www.cnblogs.com/siyecao2010/p/10083896.html

微信小程序 setData动态设置数组中的数据

setdata传递动态数据值必须为对象(只能是key:value) 语法如下 this.setData({ filter: 1212 }) 如果setdata要传递数组呢? 首先相到的是 this.setData({ filter.a: 12 filter.b: 32 }) 这样回报语法错误 既然语法规定不能在里面写数组,那就把数组定义到外面 filter.selectArea1 = 1, filter.selectArea2 = 2, filter.selectArea3 = 3, this.

【微信小程序】二维数组列表渲染

Page({ mapData:[ [{id:11},{id:12}], [{id:21},{id:22}], [{id:31},{id:32},{id:33}] ] }) <view class="container"> <view class="map"> <view wx:for="{{mapData}}"> <view wx:for="{{item}}"> {{item.i