vue监听对象的方法

2019-11-26  本文已影响0人  王玉伟的伟
只监听对象某个属性变化的优化。

deep的意思就是深入观察,监听器会一层层的往下遍历,给对象的所有属性都加上这个监听器,但是这样性能开销就会非常大了,任何修改obj里面任何一个属性都会触发这个监听器里的 handler。

但是在实际开发过程中,我们很可能只需要监听obj中的某几个属性,这样设置deep:true之后就显得很浪费!
于是我们可以使用字符串形式来优化监听。
前面obj的监听可以去掉了!

watch: {
    'obj.age': {
      handler (newValue, oldValue) {
        console.log('王明的年龄更新了新值是' + newValue + ',旧值是' + oldValue)
      },
      immediate: true
    },
    'obj.brother.age': {
      handler (newValue, oldValue) {
        console.log('王刚的年龄更新了新值是' + newValue + ',旧值是' + oldValue)
      },
      immediate: true
    },
  }


上一篇下一篇

猜你喜欢

热点阅读