Vuejs中的watch实例详解(监听者)


Posted in Javascript onJanuary 05, 2020

最近刚刚追完庆余年,心思还总是在剧情里,然后就觉得在vuejs里watch就是监察院,一个不折不扣的特务机构。在Vue中watch被称为监听者,它随时观察这vue实例中每一个数据的变化,当数据发生改变,做出响应。

通过下面的示例代码来看一下这个监察院是怎么运作的:

new Vue({
  el:"#app",
  data(){
    reutrn {
      candy:""
    }
  },
  //传说中的监察院start
  watch:{
    candy:{
      handler(newVal,oldVal){
      },
      immediate: true,
      deep:true
    }
  }
  //传输中的监察院end
})
/***
watch中监控这candy这个数据的变化,
handler中传入了两个参数:
newVal->是改变后的数据
oldVal->是改变前的数据
***/

按照庆余年的剧情分析,监察院在监控candy这个人,一旦candy发生变节,就会执行handler中的操作,newVal和oldVal就好像是提供给监察院人员来判断如果candy是内部斗争还是叛国,根据情节处以什么样的处罚。

代码中 immediate 和 deep 又是什么意思呢?

immediate和deep像是庆帝给陈萍萍的指令:

immediate为true是告诉监察院不管candy有没有变节,都先给他点处罚,敲山震虎!

deep为true是告诉监察院往深了查,看看有没有什么人跟这个人联络了,联络以后又发生了事!

写这篇文章的时候,我也在跟朋友探讨watch和updated,updated也是在数据发生改变的时候做出相应,但是如果将updated说成是监察院就感觉太喽了!updated不能指定监测数据,只要有数据发生变化就会指向updated中的方法,不管谁发生变化都会执行,这么不灵活怎么能配的上监察院这么厉害的特务机构呢!嘻嘻!

总结

以上所述是小编给大家介绍的Vuejs中的watch实例详解,希望对大家有所帮助!

Javascript 相关文章推荐
转一个日期输入控件,支持FF
Apr 27 Javascript
最好用的省市二级联动 原生js实现你值得拥有
Sep 22 Javascript
Node.js中的缓冲与流模块详细介绍
Feb 11 Javascript
实例讲解jQuery EasyUI tree中state属性慎用
Apr 01 Javascript
利用fecha进行JS日期处理
Nov 21 Javascript
详解Javascript中DOM的范围
Feb 13 Javascript
微信小程序之购物车功能
Sep 23 Javascript
js实现省市级联效果分享
Aug 10 Javascript
JavaScript实现封闭区域布尔运算的示例代码
Jun 25 Javascript
在vue项目中,将juery设置为全局变量的方法
Sep 25 Javascript
JavaScript 处理树数据结构的方法示例
Jun 16 Javascript
vue+element实现动态加载表单
Dec 13 Vue.js
Node中对非阻塞I/O、事件循环的知识点总结
Jan 05 #Javascript
原生js实现文件上传、下载、封装等实例方法
Jan 05 #Javascript
详解jQuery中的prop()使用方法
Jan 05 #jQuery
vue 对axios get pust put delete封装的实例代码
Jan 05 #Javascript
JavaScript修改注册表实例代码
Jan 05 #Javascript
详解JavaScript修改注册表的方法
Jan 05 #Javascript
js判断非127开头的IP地址的实例代码
Jan 05 #Javascript
You might like
PHP5 字符串处理函数大全
2010/03/23 PHP
很让人受教的 提高php代码质量36计
2012/09/05 PHP
个人写的PHP验证码生成类分享
2014/08/21 PHP
PHP实现检测客户端是否使用代理服务器及其匿名级别
2015/01/07 PHP
php实现以只读方式打开文件的方法
2015/03/16 PHP
用PHP写的一个冒泡排序法的函数简单实例
2016/05/26 PHP
Laravel ORM 数据model操作教程
2019/10/21 PHP
一段非常简单的让图片自动切换js代码
2006/11/10 Javascript
防止页面被iframe(兼容IE,Firefox火狐)
2010/07/04 Javascript
早该知道的7个JavaScript技巧
2013/03/27 Javascript
jquery mobile的触控点击事件会多次触发问题的解决方法
2014/05/08 Javascript
JavaScript中this的9种应用场景及三种复合应用场景
2015/09/12 Javascript
JavaScript实现使用Canvas绘制图形的基本教程
2016/10/27 Javascript
Angularjs 与 bower安装和使用详解
2017/05/11 Javascript
深入理解Vue nextTick 机制
2018/04/28 Javascript
vue点击input弹出带搜索键盘并监听该元素的方法
2018/08/25 Javascript
vue多次循环操作示例
2019/02/08 Javascript
使用Three.js实现太阳系八大行星的自转公转示例代码
2019/04/09 Javascript
jquery中attr、prop、data区别与用法分析
2019/09/25 jQuery
在vue中实现禁止屏幕滚动,禁止屏幕滑动
2020/07/22 Javascript
pygame播放音乐的方法
2015/05/19 Python
Python设计模式之原型模式实例详解
2019/01/18 Python
python字符串常用方法及文件简单读写的操作方法
2020/03/04 Python
python新手学习使用库
2020/06/11 Python
Python经典五人分鱼实例讲解
2021/01/04 Python
通过CSS3的object-fit来调整图片适配尺寸的技巧简介
2016/02/27 HTML / CSS
H5离线存储Manifest原理及使用
2020/04/28 HTML / CSS
NFL加拿大官方网上商店:NHLShop.ca
2019/03/12 全球购物
大二学期个人自我评价
2014/01/13 职场文书
文体活动实施方案
2014/03/27 职场文书
中秋寄语大全
2014/04/11 职场文书
2015年教师教学工作总结
2015/04/28 职场文书
html输入两个数实现加减乘除功能
2021/07/01 HTML / CSS
用JS写一个发布订阅模式
2021/11/07 Javascript
详解Vue项目的打包方式(生成dist文件)
2022/01/18 Vue.js
postgresql之greenplum字符串去重拼接方式
2023/05/08 PostgreSQL