vue watch关于对象内的属性监听


vue可以通过watch监听data内数据的变化。通常写法是:

data: {
  a: 100
},
watch: {
  a(newval, oldVal) {
    // 做点什么。。。
    console.log(newval, oldVal)
  }
}

vue监听整个对象,如下:

  • deep: true 深度监测
data: {
  return {
    msg: {
      name: 'hahah',
      color: 'red'
    }
  }
}
watch: {
  msg: {
    handler(newValue, oldValue) {
      // 做点什么。。。
      console.log(newValue)
  },
  deep: true
}

如果监听对象内的某一具体属性,可以通过computed做中间层来实现:

computed: {
  name() {
    return this.msg.name
  }
},
watch:{
  name(newValue, oldValue) {
     // 做点什么。。。
     console.log(newValue, oldValue)
  }
}

  

  

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM