小程序更新视图数据必须使用setData方法
如果是更新对象中的某个属性,应该怎么写呢?
this.setData({
['bigObjForm.name']: '123'
});
微信小程序版本更新了,现在这样就可以了:
/*
housePicker: {
data: ['美国', '中国'],
index: 0
}
*/
this.setData({
'housePicker.index': i
})
这样就是会只更新bigObjForm的name属性值了。
如果setData的时候,key值是变量
// wxml
<input class="weui-input" bindinput="handleInput" data-type="form.name"
placeholder="请输入小区名称" value="{{form.name}}"/>
// js
data: {
form: {
name: ''
}
}
// bindinput 事件
handleInput: function(e) {
// console.log(e, b)
let type = e.currentTarget.dataset.type
let value = e.detail.value
if (type && value) {
this.setData({
[type]: value
})
}
},
setData还有大小限制
好像是1M大小,比如有一个base64的图片列表对象,很可能更新不了。
网友评论