watch深度监听

在监听复杂数据类型的时候,不能像之前监听普通数据那样写,我们需要使用深度监听

    <div id="app">
      <input type="text" v-model="user.name">
    </div>
    <script>
      var vm = new Vue({
        el: '#app',
        data: {
          user: {
            name: 'jack'
          }
        },
        watch: {
           //不能使用监听普通数据的写法
          // user(newVal, oldVal) {
          //   console.log(newVal)
          // }
          user: {
            // 表示对象中属性变化的处理函数,这个函数只能叫这个名字
            handler(newVal) {
              console.log(newVal);
            },
            immediate: true,
            deep: true // 表示开启深度监听
          }
        }
      })
    </script>
posted @ 2019-03-11 13:38  木石天涯  阅读(4326)  评论(0编辑  收藏  举报