更新時間:2021年01月15日17時07分 來源:傳智教育 瀏覽次數(shù):
vue如何監(jiān)控屬性值變化?比如現(xiàn)在需要監(jiān)控data中,obj.a 的變化。Vue中監(jiān)控對象屬性的變化你可以這樣:
watch: { obj: { handler (newValue, oldValue) { console.log('obj changed') }, deep: true } }
deep屬性表示深層遍歷,但是這么寫會監(jiān)控obj的所有屬性變化,并不是我們想要的效果,所以做點修改:
watch: { 'obj.a': { handler (newName, oldName) { console.log('obj.a changed') } } }
還有一種方法,可以通過computed 來實現(xiàn),只需要:
computed: { a1(){ return this.obj.a } }
利用計算屬性的特性來實現(xiàn),當依賴改變時,便會重新計算一個新值。
猜你喜歡: