小程序里面的双向绑定和vue中的双向绑定有什么区别?
小程序中的数据双向绑定. 首先通过 bindinput 绑定文本框的输入事件. 在 data 中声明一个变量 content ,将其动态绑定成文本框的 value 值. 在 bindinput 事件中通过事件参数 e.detail.value 可以获取到文本框中最新的 value 值. 通过 this.setData 将文本框最新的 value 值 赋值给 动态绑定的value值 content
小程序中的数据双向绑定
. 首先通过 bindinput 绑定文本框的输入事件
. 在 data 中声明一个变量 content ,将其动态绑定成文本框的 value 值
. 在 bindinput 事件中通过事件参数 e.detail.value 可以获取到文本框中最新的 value 值
. 通过 this.setData 将文本框最新的 value 值 赋值给 动态绑定的value值 content 即可实现数据的双向绑定
vue中的数据双向绑定
. 首先为文本框绑定 @input 监听文本框的输入事件
. 为文本框动态绑定 value 属性,其值是在data中定义的变量
. 在 @input绑定的事件中 通过事件参数 event.target.value 可以获取到 input 框中最新的value值
. 将其重新获取到的 value 赋值给 value值动态绑定的那个变量
区别:
大体上区别不大,绑定事件不同,以及获取value值的具体方式不同,以及在小程序中设置data中的数据,需要调用 this.setData方法进行设置
在vue中进行数据绑定后,当数据修改了会直接更新到视图上,但是在小程序中呢,data数据修改是不会直接同步到,必须调用this.setData()这个方法
例:
data:{
arr:[{name:"小李"},{name:"小王"}],
list:[{name:"小明"},{name:"小红"}]
},
setMsg(){ //该方法可以绑定到事件上也可以在onLoad里面调用
this.data.arr = this.data.list
this.setData({
arr:this.data.arr, // 简单粗暴直接修改
["list[0].name"]:"小张" //也可以只修改里面的一项,
})
}
更多推荐
所有评论(0)