欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

vue.js中$watch的用法示例

程序员文章站 2023-11-17 18:14:34
前言 vue.js是一个数据驱动的web界面库。vue.js只聚焦于视图层,可以很容易的和其他库整合。代码压缩后只有24kb vue.js 提供了一个方法 watch,...

前言

vue.js是一个数据驱动的web界面库。vue.js只聚焦于视图层,可以很容易的和其他库整合。代码压缩后只有24kb

vue.js 提供了一个方法 watch,它用于观察vue实例上的数据变动。对应一个对象,键是观察表达式,值是对应回调。值也可以是方法名,或者是对象,包含选项。

在实例化时为每个键调用 $watch() ;

<template>
  //观察数据为字符串或数组
   <input v-model="example0"/>
   <input v-model="example1"/>
  /当单观察数据examples2为对象时,如果键值发生变化,为了监听到数据变化,需要添加deep:true参数
   <input v-model="example2.inner0"/>
</template>
<script>
   export default {
      data(){
        return {
          example0:"",
          example1:"",
          example2:{
            inner0:1,
            innner1:2
          }
        }
      },
      watch:{
        example0(curval,oldval){
          console.log(curval,oldval);
        },
        example1:'a',//值可以为methods的方法名
        example2:{
         //注意:当观察的数据为对象或数组时,curval和oldval是相等的,因为这两个形参指向的是同一个数据对象
          handler(curval,oldval){
            conosle.log(curval,oldval)
          },
          deep:true
        }
      },
      methods:{
        a(curval,oldval){
          conosle.log(curval,oldval)
        }
      }
  }
</script>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问的大家可以留言交流。