注释的比较详细,就不过做多解释了。
//index.js
//获取应用实例
const app = getApp()
Page({
// 这里data就是你当前界面所有的值。包括你后期动态添加的值都在这里
data: {
list: [{ //定义数组
number: 1
},
{
number: 1
},
{
number: 1
},
{
number: 1
},
{
number: 1
}
]
},
//事件处理函数
itemSelect: function(e) {
// 这里说一下他们的区别:target指向发生事件的组件,currentTarget指向绑定事件的组件
// 1.currentTarget: 绑定的事件当前元素及其子元素都会触发
// 2.target: 绑定的事件 子元素不会被触发事件
var _this = this;
console.log(e); //仔细看控制台
//list就是你js中data中的定义的一个数组变量,[]里面的值代表数组的下标,number是你申明的这个数组中的key,拼接在一起,结果就是当前下标的值
var index = "list[" + e.currentTarget.dataset.index + "].number"; //这里必须这样拼接
//因为小程序中分有逻辑层和渲染层等。所以我们需要用setdata函数,渲染到视图界面。
_this.setData({ //异步刷新,就是渲染
//这里进行赋值
[index]: 0 //修改值为0
})
},
})
number:{{item.number}}
/**app.wxss**/
.container {
height: 100%;
display: flex;
flex-direction: column;
padding: 20rpx;
}
.bg {
color: green;
border: 2rpx solid crimson;
margin: 20rpx;
}
text {
padding: 10rpx;
}
懒得复制的朋友,可以点一下~
Demo地址