Vue数据监听方法watch的使用


Posted in Javascript onMarch 28, 2018

watch本身很容易理解, watch负责将视图中的数据与某个函数关联起来

当Vue视图中的数据变化时, 关联的函数会被执行

Vue数据监听方法watch的使用

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>监听方法watch的使用</title>
  <script src="https://cdn.bootcss.com/vue/2.5.16/vue.js"></script>
</head>
<body>
  <div id="root"></div>
  <script>
    var vm = new Vue({
      el: "#root",
      data: { obj: {name: "zhaoolee", age: 12} , tel:6666666},
      template: `<div><div>姓名: {{obj.name}}</div>
        <div>电话: {{tel}}</div>
        <input type="text" v-model="obj.name">
        <input type="text" v-model="tel"></div>`,
      watch: {
        obj: {
         handler(){
           console.log("obj被改变");
         },
          // 页面加载之初先执行一次handle
         immediate: true,
          // 深度检查属性,即使对象内部的属性值改变, 也能检测到(比较消耗性能)
         deep: true
        },
        "obj.name": {
          handler(){
            console.log("=>obj.name被改变");
          }
        },
        tel:{
          handler(){
            console.log("tel被改变");
          }
        }
      }
    })
  </script>
</body>
</html>

对应一个对象,键是观察表达式,值是对应回调。值也可以是方法名,或者是对象,包含选项。在实例化时为每个键调用 $watch() ;

//使用官方vue-cli脚手架书写
<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>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
超级简单的图片防盗(HTML),好用
Apr 08 Javascript
Javascript动态绑定事件的简单实现代码
Dec 25 Javascript
js判断选择的时间是否大于今天的代码
Aug 20 Javascript
JS实现自适应高度表单文本框的方法
Feb 25 Javascript
JavaScript 表单处理实现代码
Apr 13 Javascript
javascript实现完美拖拽效果
May 06 Javascript
Jquery插件easyUi实现表单验证示例
Dec 15 Javascript
简单实现JavaScript图片切换效果
Nov 28 Javascript
在Js页面通过POST传递参数跳转到新页面详解
Aug 25 Javascript
微信小程序获取用户openid的实现
Dec 24 Javascript
微信小程序嵌入腾讯视频源过程详解
Aug 08 Javascript
解决Vue.js应用回退或刷新界面时提示用户保存修改问题
Nov 24 Javascript
Vue 自定义动态组件实例详解
Mar 28 #Javascript
详解VUE 对element-ui中的ElTableColumn扩展
Mar 28 #Javascript
微信小程序之分享页面如何返回首页的示例
Mar 28 #Javascript
js中el表达式的使用和非空判断方法
Mar 28 #Javascript
JS实现左边列表移到到右边列表功能
Mar 28 #Javascript
JS中用EL表达式获取上下文参数值的方法
Mar 28 #Javascript
jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法
Mar 28 #jQuery
You might like
php addslashes 利用递归实现使用反斜线引用字符串
2013/08/05 PHP
php中实现可以返回多个值的函数实例
2015/03/21 PHP
详解PHP实现执行定时任务
2015/12/21 PHP
PHP实现链式操作的三种方法详解
2017/11/16 PHP
利用ASP发送和接收XML数据的处理方法与代码
2007/11/13 Javascript
jQuery LigerUI 使用教程表格篇(1)
2012/01/18 Javascript
javascript创建和存储cookie示例
2014/01/07 Javascript
js(JavaScript)实现TAB标签切换效果的简单实例
2014/02/26 Javascript
jquery选择器原理介绍($()使用方法)
2014/03/25 Javascript
JavaScript Math.ceil 方法(对数值向上取整)
2015/01/09 Javascript
jQuery实现的多屏图像图层切换效果实例
2015/05/07 Javascript
浅谈JavaScript异常处理语句
2015/06/26 Javascript
jQuery实现输入框邮箱内容自动补全与上下翻动显示效果【附demo源码下载】
2016/09/20 Javascript
JSP防止网页刷新重复提交数据的几种方法
2016/11/19 Javascript
jQuery实现背景滑动菜单
2016/12/02 Javascript
深入理解 JavaScript 中的 JSON
2017/04/06 Javascript
JavaScript基础进阶之数组方法总结(推荐)
2017/09/04 Javascript
JavaScript设计模式之构造函数模式实例教程
2018/07/02 Javascript
微信小程序中时间戳和日期的相互转换问题
2018/07/09 Javascript
VUE项目中加载已保存的笔记实例方法
2019/09/14 Javascript
[02:51]DOTA2英雄基础教程 风暴之灵
2013/12/23 DOTA
[05:53]敌法师的金色冠名ID"BurNIng",是传说,是荣耀
2020/07/11 DOTA
python中类变量与成员变量的使用注意点总结
2017/04/29 Python
python实现搜索文本文件内容脚本
2018/06/22 Python
利用django-suit模板添加自定义的菜单、页面及设置访问权限
2018/07/13 Python
Python 实现Image和Ndarray互相转换
2020/02/19 Python
Python 解析简单的XML数据
2020/07/24 Python
新学期开学标语
2014/06/30 职场文书
乡镇安全生产目标责任书
2014/07/23 职场文书
个人债务授权委托书范本
2014/10/05 职场文书
党的群众路线教育实践活动个人对照检查材料(公安)
2014/11/05 职场文书
一次性工伤赔偿协议书范本
2014/11/25 职场文书
求职信内容一般写什么?
2015/03/20 职场文书
《LOL》“克隆大作战”久违归来 幻灵战队皮肤上线
2022/04/03 其他游戏
PC版《死亡搁浅导剪版》现已发售 展开全新的探险
2022/04/03 其他游戏
分析SQL窗口函数之聚合窗口函数
2022/04/21 Oracle