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
})
}
}
},
