更新时间:2021年01月15日17时07分 来源:传智教育 浏览次数:
vue如何监控属性值变化?比如现在需要监控data中,obj.a 的变化。Vue中监控对象属性的变化你可以这样:
watch: { obj: { handler (newValue, oldValue) { console.log('obj changed') }, deep: true } }
deep属性表示深层遍历,但是这么写会监控obj的所有属性变化,并不是我们想要的效果,所以做点修改:
watch: { 'obj.a': { handler (newName, oldName) { console.log('obj.a changed') } } }
还有一种方法,可以通过computed 来实现,只需要:
computed: { a1(){ return this.obj.a } }
利用计算属性的特性来实现,当依赖改变时,便会重新计算一个新值。
猜你喜欢: