在微信小程序的[前端開發(fā)]中,使用this.setData方法修改data中的值,其格式為:
this.setData({
'參數(shù)名1': 值1,
'參數(shù)名2': 值2
)}
需要注意的是,如果是簡單變量,這里的參數(shù)名可以不加引號。 經(jīng)過測試,可以使用3種方式對data中的對象、數(shù)組中的數(shù)據(jù)進行修改。
假設(shè)原數(shù)據(jù)為:
data: {
user_info:{
name: 'li',
age: 10
},
cars:['nio', 'bmw', 'wolks']
},
方式一:
使用字符串,例如:
this.setData({
['user_info.age']: 20,
['cars[0]']: 'tesla'
})
方式二:
構(gòu)造變量,重新賦值,例如:
var temp = this.data.user_info
temp.age = 30
this.setData({
user_info: temp
})
方式三:
直接使用字符串,此種方式之前不可以,現(xiàn)在可以了,估計小程序庫升級了。 注意和第一種方法的對比,推薦還是使用第一種方法。文章來源:http://www.zghlxwxcb.cn/news/detail-692607.html
this.setData({
'user_info.age': 40,
'cars[0]': 'ford'
})
完整代碼:文章來源地址http://www.zghlxwxcb.cn/news/detail-692607.html
Page({
/**
* 頁面的初始數(shù)據(jù)
*/
data: {
user_info:{
name: 'li',
age: 10
},
cars:['nio', 'bmw', 'wolks']
},
change_data: function(){
console.log('對象-修改前:', this.data.user_info)
this.setData({
['user_info.age']: 20
})
console.log('對象-修改后1:', this.data.user_info)
var temp = this.data.user_info
temp.age = 30
this.setData({
user_info: temp
})
console.log('對象-修改后2:', this.data.user_info)
this.setData({
'user_info.age': 40
})
console.log('對象-修改后3:', this.data.user_info)
console.log('數(shù)組-修改前:', this.data.cars)
this.setData({
['cars[0]']: 'tesla'
})
console.log('數(shù)組-修改后1:', this.data.cars)
var temp = this.data.cars
temp[0] = 'volvo'
this.setData({
cars: temp
})
console.log('數(shù)組-修改后2:', this.data.cars)
this.setData({
'cars[0]': 'ford'
})
console.log('數(shù)組-修改后3:', this.data.cars)
}
})
到了這里,關(guān)于微信小程序this.setData修改對象、數(shù)組中的值的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!