1. 侦听器:侦听属性或计算属性值的变化,可以做异步操作,比如setTimeout()。

  2. 实现侦听器的两种格式

    ① 利用watch配置项

    new Vue({el: '#root',data: function () {return {count: 1}},watch: {count: {  // 侦听count属性handler(newValue, oldValue) {console.log(`新值:${newValue},旧值:${oldValue}`);}}}
    });
    

    ② $watch()

    const vm = new Vue({el: '#root',data: function () {return {count: 1}}
    });
    vm.$watch('count', {  // 第一个参数为侦听的属性,第二个参数为配置项handler(newValue, oldValue) {console.log(`新值:${newValue},旧值:${oldValue}`);}
    });
    
  3. watch中的配置项
    ① immediate:立即,默认是false,如果为true,则在页面初始化时就触发一次handler方法
    ② deep:深度侦听,能够侦听引用数据类型内部所有属性的变化,不只局限于侦听该属性地址的变化

    new Vue({el: '#root',data: function () {return {count: 1,person: {name: 'wuwu',age: 18}}},watch: {count: {immediate: true,  // 页面初始化时,就调用一次侦听count属性的handler方法,newValue为1,oldValue为undefinedhandler(newValue, oldValue) {console.log(`新值:${newValue},旧值:${oldValue}`);}}.'person.name': { // 这样写表示侦听person中的name属性变化,效果与侦听count一致,因为它们都是基本数据类型handler(newValue, oldValue) {console.log(`新值:${newValue},旧值:${oldValue}`);}},person:{   // 这样写表示侦听person这个引用数据类型地址的变化,只有地址变化才会触发handler方法handler(newValue, oldValue) {console.log(`新值:${newValue},旧值:${oldValue}`);}},person: {  // 添加配置项deep:true表示深度侦听person中所有属性的变化,某一个属性发生变化都会触发handler方法deep: true, handler(newValue, oldValue) {console.log(`新值:${newValue},旧值:${oldValue}`);}}}
    });
    
  4. 简写格式
    上述代码都是按照完整格式编写的,如果要简写,需要满足的条件就是没有配置项,如果有需求加immediate、deep等配置项,不能简写!!!

    new Vue({el: '#root',data: function () {return {count: 1,}},watch: {count(newValue. oldValue) {   // 直接写成函数形式,与计算属性类似console.log(`新值:${newValue},旧值:${oldValue}`);}}
    });
    

Vue中的侦听器watch相关推荐

  1. vue过滤器和侦听器和计算属性

    过滤器和侦听器和计算属性 1. 过滤器 1.1基本用法 1.2私有过滤器和全局过滤器 1.3 Dayjs 1.4 连续调用多个过滤器 1.5 过滤器传参 1.6 兼容性 2. watch 侦听器 2. ...

  2. vue 侦听器侦听对象属性_不删除侦听器–使用ListenerHandles

    vue 侦听器侦听对象属性 听一个可观察的实例并对它的变化做出React很有趣. 做一些必要的事情来打断或结束这种聆听会变得很有趣. 让我们看看问题的根源和解决方法. 总览 这篇文章将首先讨论这种情况 ...

  3. vue 侦听器侦听对象属性_SQL Server始终处于侦听器状态

    vue 侦听器侦听对象属性 This article on SQL Server Always On Listeners includes an overview and various connec ...

  4. Vue——计算属性与侦听器

    目录 一.计算属性 1.基本使用 2.复杂使用 3.getter和setter 4.计算属性和methods的对比 二.侦听器 1.watch的用法 一.计算属性 1.基本使用 ​ 现在有变量姓氏和名 ...

  5. VUE 监听当前路由 侦听器 watch

    侦听器: 你可以利用侦听器,响应数据的变化,例如路由,和页面中data的值,可以在他们变化的时候写相应的处理逻辑在侦听器中. 侦听器的使用很简单: watch 对象就是侦听器,只有当侦听的值改变了它才 ...

  6. 侦听器watch及其和计算属性、methods方法的总结

    目录 一.watch侦听器 二.侦听器的处理函数 解决深度监听新老值同源问题 三.侦听器的格式 1. 方法格式的侦听器 2.对象格式的侦听器 四.侦听器watch.计算属性.methods方法的总结 ...

  7. 面试点:五句话教你计算属性和和侦听器区别

    在面试官问你计算属性和侦听器有什么区别时,他想听到的核心就是下面这五句话 (0)功能不同,计算属性用于解决模板语法冗余问题,侦听器侦听data中每一个数据变化 (1)计算属性有缓存机制,侦听器没有缓存 ...

  8. 此计算机支持多个rdp侦听程序,远程桌面侦听器证书配置

    远程桌面侦听器证书配置 09/08/2020 本文内容 本文介绍在基于 Windows Server 2012 或基于 Windows Server 2012 的服务器上配置侦听器证书的方法,该服务器 ...

  9. 不删除侦听器–使用ListenerHandles

    听一个可观察的实例并对它的变化做出反应很有趣. 做一些必要的事情来打断或结束这种聆听会变得很有趣. 让我们看看问题的根源和解决方法. 总览 这篇文章将首先讨论这种情况,然后再讨论常见的方法和问题所在. ...

最新文章

  1. 嵌入式成长轨迹54 【Zigbee项目】【CC2430基础实验】【系统睡眠工作状态】
  2. 比较有用的sql语句
  3. 局域网屏幕共享_ShareMouse for Mac(鼠标键盘共享)
  4. COCI CONTEST #3 29.11.2014 KAMIONI
  5. python代码设计测试用例_Python单元测试与测试用例简析
  6. 数据可视化系列(四):文字图例尽眉目
  7. html工具箱源码,大灰狼的ASP工具箱——XMLHTTP的应用,获得远程的文件,获得远程HTML文件源码...
  8. linux tcl expect 安装(转)
  9. numberformat_解决NumberFormat的解析问题
  10. java商品管理系统(增删改查)
  11. linux 火狐打不开网页视频,Ubuntu下Firefox不能播放html视频的问题
  12. 设置电脑屏保全屏显示时间,酷!
  13. 标鸽知产商标自助注册流程
  14. 计算机常用工具软件实训总结报告,计算机常用工具软件实训报告精编版.doc
  15. html5水墨,web前端入门到实战:html5网页特效-水墨动画
  16. 《Caffe Modle Zoo》
  17. 【docker系列】docker深入浅出之安装教程
  18. shardingsphere源码分析(四)-- 改写引擎
  19. css 实现单行、多行文本显示
  20. Tracert与Traceroute[转]

热门文章

  1. 用布雷森汉姆(Bresenham)算法直接在YUV图上绘制图形
  2. 【武汉理工大学】软件工程八股文速记
  3. java公告栏js资源_javascript制作滚动公告栏
  4. 三星发布2亿像素传感器并举办第三届未来技术论坛;福瑞泰克新智能制造工厂在乌镇开工 | 全球TMT...
  5. Json4s的一些用法 JSon转对象实体 Json转Map Map转Json
  6. FFplay播放器分析
  7. Qt结合FFmpeg转码码流数据(h264)生成不同视频格式(mp4、mov、flv、avi等)
  8. 算法:A星寻路(含实例)
  9. 蓝松AI人像抠图的接口说明
  10. android 补丁包增量更新