vue侦听器

使用watch来侦听data中数据的变化,watch中的属性一定是data 中已经存在的数据。

当需要监听一个对象的改变时,普通的watch方法无法监听到对象内部属性的改变,只有data中的数据才能够监听到变化,此时就需要deep属性对对象进行深度监听。

<div id="app">

<input type="text" v-model="username">

</div>

<script>

  const vm = new Vue({

    el: '#app',

    data: {

      username: 'aaaa'

    },

    watch: {

      username(newVal, oldVal) {

        console.log(newVal, oldVal)

      }

    }

  })

</script>

 

-----------------------------------------------------------

# 对象侦听

<div id="app">

<input type="text" v-model="obj.username">

</div>

<script type="text/javascript">

  const vm = new Vue({

    el: '#app',

    data: {

      obj: {

        username: '张三'

      }

    },

    watch: {

      obj: {

        handler(newVal, oldVal) {

          console.log(newVal, oldVal)

        },

// 深度侦听

        deep: true

      }

    }

  })

</script>

右侧打赏一下 代码改变世界一块二块也是爱
原文地址:https://www.cnblogs.com/ht955/p/14236892.html