返回顶部
首页 > 资讯 > 精选 >如何理解Vue的监听属性
  • 212
分享到

如何理解Vue的监听属性

2023-06-21 20:06:57 212人浏览 泡泡鱼
摘要

如何理解Vue的监听属性,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Vue监听属性什么是监听属性?所谓监听就是对内置对象的状态或者属性变化进行监听并且做出反应的响应,监听

如何理解Vue的监听属性,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

    Vue监听属性

    什么是监听属性?

    所谓监听就是对内置对象的状态或者属性变化进行监听并且做出反应的响应,监听属性,意思就是可以监视其他数据的变化。

    监听属性和计算属性的区别?

    计算属性是依赖的值改变后重新计算结果更新DOM,会进行缓存

    属性监听的是属性值,当定义的值发生变化时,执行相对应的函数。

    最主要的用途区别:

    计算属性不能执行异步任务。计算属性一般不会用来向服务器请求或者执行异步任务,因为耗时可能会比较长,我们的计算属性要实时更新。所以这个异步任务就可以用监听属性来做。

    总之一句话:computed能实现的,watch都能实现,computed不能实现的,watch也能实现

    监听属性的使用

    使用watch配置项,在配置项里面写上要监视的属性,每次属性值的变化都会触发handler函数回调,也可以监视计算属性的变化。

    如何理解Vue的监听属性

    例子:

    监视输入框的变化

    如何理解Vue的监听属性

    代码

    <template><div class="main">    我:<el-input v-model="name" placeholder="请输入名字"></el-input>    好友1<el-input v-model="friends.friend_1" placeholder="请输入名字"></el-input>    好友2<el-input v-model="friends.friend_2" placeholder="请输入名字"></el-input></div></template><script>export default {  data(){    return{      name:'浪漫主义码农',      friends:{friend_1:'张三',friend_2:'李四'}    }  },  watch:{    name:{      handler(newValue,oldValue){  //newValue 新的值,oldValue变化前的值        console.log(newValue,oldValue)        this.friends.friend_1='王五'      }    },    //监视多级结构中某个属性的变化    'friends.friend_1':{      handler(newValue,oldValue){        console.log(newValue,oldValue)      }    },    'friends.friend_2':{      handler(newValue,oldValue){        console.log(newValue,oldValue)      }    },  }};</script>
    深度监听

    当我们的对象有多层结构的时候,我们要监听的对象的属性很多,避免一个一个属性单独写,这个时候用到深度监听。

    在watch配置中,监视属性对象中,配置deep 设置为 true 用于监听多级对象或者数组内部值的变化

     watch:{    //监视多级结构中所有属性的变化    friends:{      handler(newValue,oldValue){        console.log(newValue,oldValue,"aa")      },      deep:true, //开启深度监听    }  }

    如何理解Vue的监听属性

    注意:这里有个问题,深度监听时会出现新旧值相同的现象?

    官方的解释:

    在变异(不是替换)对象或数组时,旧值将与新值相同,因为它们的引用指向同一个对象/数组。Vue不会保留变异之前值的副本

    就是导致了指针的变化。在我的js深拷贝你还不会吗 文章里讲到数据的存储

    立即调用

    和deep配置的地方一样。

    immediate 设置为 true 将立即以触发当前handler回调

      watch:{    name:{      handler(newValue,oldValue){  //newValue 新的值,oldValue变化前的值        console.log(newValue,oldValue)        this.friends.friend_1='王五'      },      immediate:true    },  }

    在页面加载的时候就执行了一次,所以旧数据为undefined

    如何理解Vue的监听属性

    watch监听属性通常可以用在 数据持久化、派发事件并同步/异步执行,验证格式…

    关于如何理解Vue的监听属性问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网精选频道了解更多相关知识。

    --结束END--

    本文标题: 如何理解Vue的监听属性

    本文链接: https://lsjlt.com/news/300458.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • 如何理解Vue的监听属性
      如何理解Vue的监听属性,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Vue监听属性什么是监听属性?所谓监听就是对内置对象的状态或者属性变化进行监听并且做出反应的响应,监听...
      99+
      2023-06-21
    • 详解Vue的监听属性
      目录Vue监听属性什么是监听属性?监听属性和计算属性的区别?监听属性的使用深度监听立即调用总结Vue监听属性 什么是监听属性? 所谓监听就是对内置对象的状态或者属性变化进行监听并且做...
      99+
      2024-04-02
    • Vue中如何watch监听属性
      这篇文章主要介绍了Vue中如何watch监听属性,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。首先要确认 watch是一个对象,要当成对象来使用。键:就是那个,你要监听的那个...
      99+
      2023-06-21
    • Vue监听属性和计算属性
      目录一、watch监听属性 1.购物车 2.全选与取消全选 二、计算属性 1.computed 2.methods 3.setter 一、watch监听属性 这个属性用来监视某个数...
      99+
      2024-04-02
    • Vue中的计算属性与监听属性
      目录一、为什么要使用计算属性什么是计算属性二、计算属性和方法的区别1、区别2、计算属性使用场景三、修改计算属性的值总结四、监听属性1、监听普通属性2、监听属性和计算属性的区别3、监听...
      99+
      2024-04-02
    • 关于Vue中的计算属性和监听属性详解
      目录一、computed计算属性(1)计算属性的缓存(2)计算属性的setter二、watch监听属性一、computed计算属性 Vue.js模板内的表达式非常便利,但是设计它们的...
      99+
      2023-05-20
      Vue 计算属性 Vue 监听属性
    • Vue监听属性图文实例详解
      目录 什么是监听属性?监听属性和计算属性的区别?监听属性的使用深度监听立即调用写在最后 什么是监听属性? 所谓监听就是对内置对象的状态或者属性变化进行监听并且做出反应的响应,监听属性...
      99+
      2024-04-02
    • Vue中的 watch监听属性详情
      目录一.watch监听一般数据的变化(数值,字符串,布尔值)1.数值2.字符串3.布尔值二.watch 监听 复杂类型数据的变化1.对象2.数组3.对象数组4.对象数组的属性首先要确...
      99+
      2024-04-02
    • vue2.0如何监听属性的使用
      这篇文章给大家分享的是有关vue2.0如何监听属性的使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.基础版监听:场景如下:输入框输入你的年龄,如果年龄在0-15岁提示信息:...
      99+
      2024-04-02
    • Vue中的计算属性与监听属性怎么用
      今天小编给大家分享一下Vue中的计算属性与监听属性怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、为什么要使用计算属...
      99+
      2023-06-29
    • vue怎么使用watch监听属性
      这篇文章主要介绍了vue怎么使用watch监听属性的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue怎么使用watch监听属性文章都会有所收获,下面我们一起来看看吧。基本用法Vue watch最重要的使用场景...
      99+
      2023-06-30
    • Vue监听属性和计算属性怎么使用
      这篇文章主要讲解了“Vue监听属性和计算属性怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue监听属性和计算属性怎么使用”吧!一、watch监听属性这个属性用来监视某个数据的变化,...
      99+
      2023-06-25
    • Vue计算属性与监视(侦听)属性的使用深度学习
      目录计算属性(computed)监视属性(watch)监视的两种方法immediate选项深度监视计算属性(computed) 计算属性指的是通过一系列运算之后,最终得到一个值。这个...
      99+
      2022-11-13
      vue计算属性和侦听属性 vue计算属性 vue监视属性
    • 如何理解Vue中的ref属性
      这期内容当中小编将会给大家带来有关如何理解Vue中的ref属性,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。上述就是小编为大家分享的如何理解Vue中的ref属性了,如果刚好有类似的疑惑,不妨参照上述分析进...
      99+
      2023-06-25
    • android程序如何监听系统属性的变化
      Android 程序可以通过注册 android.os.SystemProperties 类的监听器来监听系统属性的变化。具体步骤如下: 实现 android.os.SystemProperties.OnPropertiesChanged...
      99+
      2023-09-05
      java Powered by 金山文档
    • vue中watch监听对象中某个属性的方法
      目录immediate 和 handlerdeep 深度监听以currentParams为例,监听selOrgId属性immediate 和 handler watch 的用法有个特...
      99+
      2023-05-17
      vue watch监听对象属性 vue watch监听
    • Angular中如何使用$watch监听object属性值
      这篇文章主要介绍Angular中如何使用$watch监听object属性值,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Angular中的$watch可以监听属性值的变化,然后并做出...
      99+
      2024-04-02
    • vue如何监听对象
      在vue中监听对象的方法:1.新建项目,引入vue;2.定义监听对象;3.使用watch方法对对象进行监听;具体步骤如下:首先,新建一个html项目,并在项目中引入vue;import Vue from 'vue'引入vue后,在项目中定义...
      99+
      2024-04-02
    • vue如何监听变量
      在vue中监听变量的方法:1.新建项目,引入vue;2.定义监听对象;3.使用watch方法监听对象中的变量;具体步骤如下:首先,新建一个html项目,并在项目中引入vue;import Vue from 'vue'引入vue后,在项目中定...
      99+
      2024-04-02
    • vue如何监听路由
      在vue中监听路由的方法有:1.使用watch方法监听;2.使用watch方法监听路由变化,并获取路由信息;3.使用beforeEach方法全局监听;4.使用beforeRoute方法在组件内部监听具体方法如下:使用watch方法监听路由w...
      99+
      2024-04-02
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作