vue中怎么写这样的侦听呢?

obj = {
    a:1,
    b:2,
    c:3,
    d:4,
    e:5,
    f:6,
    g:7,
}

只有当a,b,c,d,e,f改变的时候才触发某函数,g改变不触发,怎么写这样的watch呢???

重点:有没有'obj.a'(){}, 'obj.b'(){} ... 这样以外的方式呢?

阅读 2.1k
3 个回答

这样写:

watch:{
   'obj':{
      handler(val){
          for(let key in val){
              if(!key.includes('g')){
                  //监听改变后的逻辑
              }
          }
      },
      deep:true
   }
}

如果你觉得有问题,那请看这个示例demo

'obj.a'(val){

  //any
}

...
列着走就行

在watch obj的时候,判断改变的属性是不是g

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题