1.直接监听单个字符串的变化

//value就是需要监听的变量watch:{value(){console.log('1321321321',this.value);}},//带参数的watch:{value(newVal,oldVal){console.log('1321321321',newVal,oldVal);}},
   watch:{'value': {immediate: true,deep:true,handler (val) {}}},
    watch:{value: {immediate: true,deep:true,handler (newVal) {console.log('newVal',newVal);}}},

2.监听数组的变化

2.1如果只是想监听数组的长度变化,普通监听即可

watch: {list:{handler(newVal,oldVal){console.log(newVal,oldVal);},}
},

2.2监听里面的值变化,需要深度监听deep: true,后面发现监听数组不加deep也可以

 watch: {list:{handler(newVal,oldVal){console.log(newVal,oldVal);//新旧值不同},deep: true,}
},

3.监听对象的变化,需要深度监听,用到deep属性

3.1监听整个对象的变化

 watch: {obj: {handler(newValue, oldValue) {console.log(newValue,oldValue)//打印出的新旧值一样,后面内容会解决这个新旧值一样的问题
},// 这里是关键,代表递归监听 obj 的变化deep: true}
},

3.2监听对象中的某个属性变化,

immediate表示在watch中首次绑定的时候,是否执行handler,设置为true则首次就执行

数组(一维、多维)的变化不需要通过深度监听,对象数组中对象的属性变化则需要deep深度监听。

遇到问题:监听对象时新旧值一样

问题描述:监听对象时新旧值一样

出现原因:

解决方案:

1方法一:使用computed属性将当前的对象进行深拷贝监听computed的值,代码如下:


computed:{newObj(){return JSON.parse(JSON.stringify(this.obj));}},//添加obj对象的变化watch: {newObj:{handler(newVal,oldVal){console.log(newVal,oldVal);//此时输出的新旧值不同了},deep:true  }
},

方法二:set方法后续更新

watch监听的几种写法相关推荐

  1. common-io-2.0的新功能之文件监控FileAlteration(文件监听的两种实现方法《很全的监听文件例子》)...

    common-io-2.0的新功能之文件监控FileAlteration(文件监听的两种实现方法<很全的监听文件例子>) 转载于:https://www.cnblogs.com/rocky ...

  2. ℃江让您从精通到入门:OnClick事件监听的几种方式

    笔译笔,不如人之比,见一见,不与人为鉴.苍天下, 弃细雨,混泪难断谁更惆:苍穹再,散绸绫,铺洒漫染何出犹. 今天笔者来说下Android中OnClick事件监听的几种书写方式. 匿名内部类的方式 pa ...

  3. android Button 监听的几种方式

    android button控件目前主要有如下几种监听方式: 一个button控件对应一个监听: [java] view plaincopy Button buttontest; buttontest ...

  4. 王立平--android事件监听的3种方式

    第一种通常在activity组件的oncreate事件中直接定义,直接动作. 这样的方式每一个控件都定义一次.通常不方便. Button btn = (Button) findViewById(R.i ...

  5. android让跟布局优先响应点击事件,andorid事件监听的五种方式

    一.Android中的事件处理方法 事件处理:响应用户UI动作,提高应用程序交互性 1.基于监听的事件处理机制 2.基于回调的事件处理机制 3.Handler消息处理 二.基于监听的事件处理机制详解 ...

  6. vue2.0 -- watch监听

    watch监听的几种写法: <html> <!--在这里插入内容-->watch: {// 适用于普通变量a: function (val) {console.log(000) ...

  7. [已验证]双卡手机下两种来电监听方法的一些问题。

    为什么80%的码农都做不了架构师?>>>    首先,网上学习到的来电监听有两种方法,但在双卡手机上都不太正常工作. 经过用户的反馈,基本上都能监听到大部分主流双卡手机的主副卡来电了 ...

  8. 深究AngularJS——监听模型$watch

    前言 1.$watch是scope内置的函数,它的作用是用来监听数据的变化. 2.$watch可监听哪些数据? 单个对象的属性 需要计算的结果(函数) 3. 语法: $scope.$watch(F,M ...

  9. Android 截屏监听(截图分享功能实现)

    具体来说就是,检测到了用户在应用内有截图,弹出一个分享界面, 在截图下方添加一个二维码,进行分享. ●●●  前言 Android系统没有直接对截屏事件监听的接口,也没有广播,只能自己动手来丰衣足食, ...

最新文章

  1. 判断某数组是不是二叉树的前序遍历序列 python递归
  2. (字符串的处理4.7.22)POJ 3337 Expression Evaluator(解析C风格的字符串)
  3. http协议头信息详解
  4. 开课吧python小课值得么-好消息!今天,审计、会计、税务、财务主管彻底沸腾了……...
  5. 配置单臂路由、三层交换技术以及动态路由
  6. java agent_如何脚踏实地构建Java Agent
  7. VirtualBox安装完Linux却进不了系统
  8. 为什么说微服务一定要有 API 网关?
  9. 20200708:动态规划复习day02
  10. CentOS禁用root用户远程登录
  11. 怎么把文件传到虚拟机里
  12. word转pdf linux java,java实现Word转Pdf(Windows、Linux通用)
  13. 【论文笔记】Evolving Deep Neural Networks.
  14. java整型转换成字符串_java整型转换成字符串
  15. 远程控制teamviewer|远程桌面teamviewer|远程桌面连接软件teamviewer|teamviewer无人值守
  16. 微信小程序设置字体加粗
  17. Python 刷访问量
  18. 恩尼格玛模拟器_用C语言编的恩格尼码模拟器
  19. 用彩信模块发图片问题总结(STM32)
  20. qbo base board debug

热门文章

  1. 【论文翻译】DBpedia - A Crystallization Point for the Web of Data-2009
  2. Python3从零开始爬取今日头条的新闻【五、解析头条视频真实播放地址并自动下载】
  3. 易学笔记-系统分析师考试-第2章 经济管理与应用数学/2.6 IT审计相关常识/2.6.2 IT审计程序
  4. html图片山写字,canvas实现田字格写字效果
  5. 短视频全平台项目金小指后盾
  6. 智库时代杂志智库时代杂志社智库时代编辑部2022年第44期目录
  7. 微软128核服务器,王思聪的百万元电脑:64核心128线程/跑分世界第四
  8. 【电源之美】驱动电源的电路组成
  9. 12届蓝桥杯省赛c++b组 J题 括号序列
  10. 具有现代设计和最新Bootstrap版本的数字市场HTML模板