关于微信小程序this.setData()用法
2019-07-06 本文已影响0人
手劲很大
基本使用
字符串 数值 布尔
data: {
name: 'Blake'
}
this.setData({'name': 'Yang'})
对象
data: {
person: {
name: 'Blake',
age: 9
}
}
this.setData({'person.name': 'Blake})
高能
普通的数组
怎样动态修改某个元素
//wxss
<view wx:for="{{arr}}" bindtap="changeNum" data-id="index">{{item}}</view>
//js
data: {
arr: [1,2,3,4,5,6]
}
changeNum(e){
var id = e.currentTarget.dataset.id
var str = "arr["+id+"]"
this.setData({
[str]: 99
})
}
or
changeNum(e){
var id = e.currentTarget.dataset.id
this.data.arr[id] = 99
this.setData({
arr: this.data.arr
})
}
元素是对象的数组
当元素被点击时,修改age
//js
data: {
people: [
{
name: 'Blake',
age: 9
},
{
name: 'Blake',
age: 9
},
{
name: 'Blake',
age: 9
}
]
}
changeNum(e){
var id = e.currentTarget.dataset.id
var str = "arr["+id+"].age"
this.setData({
[str]: 99
})
}
or
changeNum(e){
var id = e.currentTarget.dataset.id
this.data.arr[id].age = 99
this.setData({
arr: this.data.arr
})
}