美文网首页
关于watch监听器

关于watch监听器

作者: 请越来越好 | 来源:发表于2020-07-13 17:07 被阅读0次

我们在使用属性监听watch属性时都知道,只有在改变这个值时才会触发watch函数的触发,
但有些情况我们希望首次就触发watch这时候我们就会用到handler函数与immediate属性代码如下

data  ()  {
return{
  name:'简书小白'
  }
},
watch:{
  name:{
        handler(newName,oldName){
            console.log(newName,oldName)
        }
        immediate:true //设置true之后则改变调用name中函数为handler方法并会在首次执行
    }
}

这就是watch高级用法, 当然我们偶尔还会用到deep深度监听,我们明天再继续讲deep

首先,我们要知道 watch可以监听到属性的变化从而触发函数做一些相应的操作,那么当我们改变的值是引用类型时例如
<script>
export default {
  name: 'App',
  data  ()  {
    return{
        obj:{
          name:'简书'
        }
      }
    },
  mounted(){
    setTimeout(() => {
        this.obj.name='知乎'
    }, 1000);
  },
  watch:{
    obj:{
        handler:'changeobj', //通过handler方法将逻辑抽离避免代码臃肿
    }
  },
  methods:{
    changeobj(newName, oldName){
        console.log(newName, oldName)
    }
  }
}
</script>
watch是不会触发的,由于众所周知的原因,Vue监听不到对象深层的变化,那我们应该怎么样触发呢

答案如下

<script>
export default {
  name: 'App',
  data  ()  {
    return{
        obj:{
          name:'简书'
        }
      }
    },
  mounted(){
    setTimeout(() => {
        this.obj.name='知乎'
    }, 1000);
  },
  watch:{
    obj:{
        handler:'changeobj', //通过handler方法将逻辑抽离避免代码臃肿
        deep:true //这个就是我们今天的重点 deep属性
    }
  },
  methods:{
    changeobj(newName, oldName){
        console.log(newName, oldName)
        //这里就会正常去打印
    }
  }
}
</script>

deep属性就是用来这样子

相关文章

  • 关于watch监听器

    我们在使用属性监听watch属性时都知道,只有在改变这个值时才会触发watch函数的触发,但有些情况我们希望首次就...

  • vue3 setup中watch监听的使用方法

    watch监听器使用方法 1. watch监听器可以监听一个getter函数 这个getter要返回一个响应式对象...

  • vue3.0 watch监听器使用方法

    watch监听器使用方法 watch监听器可以监听一个getter函数这个getter要返回一个响应式对象当该对象...

  • watch监听器

    如果是普通的监听data中的数据变化 1.可以用computed计算 例如通过input绑定v-model来通...

  • 微信小程序之watch属性值(仿Vue)

    Vue通过监听watch属性来观测Vue实例数据的变化。 监听器的原理,将data中需监听的属性写在watch对象...

  • 11、webpack 监听watch

    在webpack中可以配置watch监听器时时打包: 1、配置如下: webpack.config.js完整配置:

  • computed与watch的区别

    计算属性computed和监听器watch都可以观察属性的变化从而做出响应,不同的是: 计算属性computed更...

  • 监听器和计算属性的区别watch,computed

    计算属性computed和监听器watch区别?1.能使用计算属性computed的尽量使用计算属性,但是计算属性...

  • 25.Vue监听器(watch)

    Vue种的监听器主要是来响应数据的变化。当需要在数据变化时执行异步或开销较大的操作时,这个方式是最有用的。 案例:

  • Vue3:Watch 监听器

    1、什么是 watch 侦听器 watch 侦听器允许开发者监视数据的变化,从而针对数据的变化做特定的操作。例如,...

网友评论

      本文标题:关于watch监听器

      本文链接:https://www.haomeiwen.com/subject/eoqzcktx.html