observer是当定义的属性变量的值发生改变会自动执行下面的代码
1、定义:
在component下面的properties中定义的属性变量中定义
properties: { more: { type: String, observer: 'loadMore' } },
其一,more的定义方法可以直接是如下,但是因为要定义observer,所以需要展开定义的方式定义
properties: {
more: String
},
其二,observer中可以直接定义一个函数,接受三个参数,newVal(新值),oldVal(旧值)和changedPath(路径)如下,但是,为了便于维护,简洁,也可以在methods中定义方法,然后在observer中引用方法名称,如上
properties: {
classic: {
type: Object,
observer: function(newVal, oldVal){
let val = newVal < 10 ? '0' + newVal : newVal
this.setData({
_index: val
})
}
}
},