最初理解的双向绑定是来自input,提到双向绑定概念是:变量值变化可以体现到input 值显示上,同时用户的输入也可以改变变量。这里确实体现了二个方向。 这块没有问题。
自定义的组件里的双向绑定
// custom-component.js
Component({
properties: {
myValue: String
},
methods: {
update: function() {
// 更新 myValue
this.setData({
myValue: 'leaf'
})
}
}
})
如果页面这样使用这个组件:
<custom-component model:my-value="{{pageValue}}" />
看完上面例子,结合input 的例子,给人感觉是修改了pageValue 同时也能同步到属性中myValue. 实际测了一下,并不能。
自定义组件的双向绑定,只能修改了属性值同时,也能同步到data 数据中,反向则不可以。
这样的话,有什么用呢?其他用pageValue 的地方直接用myValue 不就行了? 不太理解什么场景下用到这种?
希望大佬给解惑一下。
1、找不到使用场景,就不管它,完事;
2、比如,当input有值时,“确认”按键就显示,否则就隐藏时,用wxs双向绑定就比较简单,不需要和js里的setData打交道了。