广告
返回顶部
首页 > 资讯 > 前端开发 > html >vue2.0如何监听属性的使用
  • 874
分享到

vue2.0如何监听属性的使用

2024-04-02 19:04:59 874人浏览 八月长安
摘要

这篇文章给大家分享的是有关Vue2.0如何监听属性的使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.基础版监听:场景如下:输入框输入你的年龄,如果年龄在0-15岁提示信息:

这篇文章给大家分享的是有关Vue2.0如何监听属性的使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

1.基础版监听:

场景如下:输入框输入你的年龄,如果年龄在0-15岁提示信息:你还是个小孩,如果年龄在 15-25岁,提示信息:你已经是个少年,如果年龄在25岁以上,提示信息:你已经长大了。根据需求配合监听属性我们得到下面的代码:

<template>
 <div id="app">
  年齡:<input type="number" v-model="age"><br>
  提示信息:<span>{{infoMsg}}</span>
 </div>
</template>

<script>
export default {
 data() {
  return {
   age: "",
   infoMsg:""
  }
 },
 watch:{
  age:function(val,oldval){
   if(val>0 && val<15){
    this.infoMsg="你还是个小孩"
   }else if(val>15 && val<25){
    this.infoMsg="你已经是个少年"
   }else{
    this.infoMsg="你已经长大了"
   }
  }
 }
}
</script>

这里需要特别说明一下的是:坚挺属性方法中的两个参数分别代表的含义:第一个val是当面正在监听的属性的值,oldval是属性改变之前的值,由于这是形参的原因,参数的名字可以自己定义,但是但是参数所代表的含义是不会变化的。

2.进阶版监听:

下面我们改变一下需求:基础规则不变,但是因为后台数据库的更改(画个圈圈咀咒他)我们需要提交一个这样的数据结构

 data() {
  return {
   info: {
    age: ""
   },
   infoMsg: ""
  };
 },

由于我们监听的是对象info中的属性age值的变化,所以我们需要使用到的是深度监听,具体代码如下:

<template>
 <div id="app">
  年齡:<input type="number" v-model="info.age"><br>
  提示信息:<span>{{infoMsg}}</span>
 </div>
</template>

<script>
export default {
 data() {
  return {
   info: {
    age: ""
   },
   infoMsg: ""
  };
 },
 watch: {
  info: {
   handler: function(val, oldval) {
    var that = this;
    if (val.age > 0 && val.age < 15) {
     that.infoMsg = "你还是个小孩";
    } else if (val.age > 15 && val.age < 25) {
     that.infoMsg = "你已经是个少年";
    } else {
     that.infoMsg = "你已经长大了";
    }
   },
   deep: true
  }
 }
};
</script>

在这里需要注意的有两点:1,这里的function不能使用箭头函数替代,如果使用箭头函数的话,this的指向会是全局。2,你会注意到这里多加入一个属性是deep,它的含义表示是否开启深度监听,如果开启值为true,反之为false。

3.最高级监听:

针对第二个案例不知道你有没有发现一个问题:我们监听的是一个对象里面某个属性的变化,但是如果当这个对象里面有很多个值的时候,虽然也可以使用第二种方法进行监听,但是这将会是对资源的一种极大的浪费,身为一个严谨的程序员(微笑脸),绝对不能允许这样的事情发生,所以我们可以结合computed(计算属性)对上面的代码进行优化

<template>
 <div id="app">
  年齡:<input type="number" v-model="info.age"><br>
  提示信息:<span>{{infoMsg}}</span>
 </div>
</template>
<script>
export default {
 data() {
  return {
   info: {
    age: "",
    name: "",
    hobit: ""
   },
   infoMsg: ""
  };
 },
 computed: {
  ageval: function() {
   return this.info.age;
  }
 },
 watch: {
  ageval: {
   handler: function(val, oldval) {
    var that = this;
    if (val > 0 && val < 15) {
     that.infoMsg = "你还是个小孩";
    } else if (val > 15 && val < 25) {
     that.infoMsg = "你已经是个少年";
    } else {
     that.infoMsg = "你已经长大了";
    }
   },
   deep: true
  }
 }
};
</script>

通过上面的我们看出,这次我们监听的是计算属性ageval,而计算属性返回的则是info对象中age的值,与第二次的代码进行比较我们可以发现两次代码中监听的一个是对象info,一个是info对象中age的值,性能大大增强,这就是我们期待的结果了。

感谢各位的阅读!关于“vue2.0如何监听属性的使用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: vue2.0如何监听属性的使用

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • vue2.0如何监听属性的使用
    这篇文章给大家分享的是有关vue2.0如何监听属性的使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.基础版监听:场景如下:输入框输入你的年龄,如果年龄在0-15岁提示信息:...
    99+
    2022-10-19
  • 如何理解Vue的监听属性
    如何理解Vue的监听属性,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Vue监听属性什么是监听属性?所谓监听就是对内置对象的状态或者属性变化进行监听并且做出反应的响应,监听...
    99+
    2023-06-21
  • JavaScript计算属性与监视(侦听)属性的使用
    监视属性(watch)watch监视(侦听)器允许开发者监视数据的变化,从而针对数据的变化做特定的操作。监视的两种方法通过new Vue时传入watch配置:<div id="root"> <i...
    99+
    2023-05-14
    javascript
  • Vue中如何watch监听属性
    这篇文章主要介绍了Vue中如何watch监听属性,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。首先要确认 watch是一个对象,要当成对象来使用。键:就是那个,你要监听的那个...
    99+
    2023-06-21
  • Angular中如何使用$watch监听object属性值
    这篇文章主要介绍Angular中如何使用$watch监听object属性值,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Angular中的$watch可以监听属性值的变化,然后并做出...
    99+
    2022-10-19
  • Vue监听属性和计算属性怎么使用
    这篇文章主要讲解了“Vue监听属性和计算属性怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue监听属性和计算属性怎么使用”吧!一、watch监听属性这个属性用来监视某个数据的变化,...
    99+
    2023-06-25
  • vue怎么使用watch监听属性
    这篇文章主要介绍了vue怎么使用watch监听属性的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue怎么使用watch监听属性文章都会有所收获,下面我们一起来看看吧。基本用法Vue watch最重要的使用场景...
    99+
    2023-06-30
  • Vue中的计算属性与监听属性怎么用
    今天小编给大家分享一下Vue中的计算属性与监听属性怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、为什么要使用计算属...
    99+
    2023-06-29
  • Vue计算属性与监视(侦听)属性的使用深度学习
    目录计算属性(computed)监视属性(watch)监视的两种方法immediate选项深度监视计算属性(computed) 计算属性指的是通过一系列运算之后,最终得到一个值。这个...
    99+
    2022-11-13
    vue计算属性和侦听属性 vue计算属性 vue监视属性
  • android程序如何监听系统属性的变化
    Android 程序可以通过注册 android.os.SystemProperties 类的监听器来监听系统属性的变化。具体步骤如下: 实现 android.os.SystemProperties.OnPropertiesChanged...
    99+
    2023-09-05
    java Powered by 金山文档
  • Vue3中怎么使用watch监听对象的属性值
    这篇文章主要介绍“Vue3中怎么使用watch监听对象的属性值”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Vue3中怎么使用watch监听对象的属性值”文章能帮助大家解决问题。Vue3 中使用 w...
    99+
    2023-07-04
  • vue正确使用watch监听属性变化方式
    目录基本用法监听object使用deep参数重新赋值通过路径监听内部数据初始化变量触发监听回调总结Vue中可以使用监听器监听属性的变化,并根据属性变化作出响应。但一旦涉及到复杂数据的...
    99+
    2022-11-13
  • vue2.0$nextTick如何监听数据渲染完成之后的回调函数
    这篇文章主要介绍vue2.0$nextTick如何监听数据渲染完成之后的回调函数,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!vue里面本身带有两个回调函数:一个是`Vue.next...
    99+
    2022-10-19
  • Vue中computed(计算属性)和watch(监听属性)的用法及区别说明
    目录计算属性computed侦听属性watch计算属性computed 支持缓存,只有依赖数据发生改变,才会重新进行计算 不支持异步,当computed内有异步操作时无效,无法监听数...
    99+
    2022-11-13
  • 如何使用HttpSessionListener监听器
    这篇“如何使用HttpSessionListener监听器”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何使用HttpSe...
    99+
    2023-06-29
  • Vue3中的计算属性及侦听器如何使用
    这篇文章主要介绍“Vue3中的计算属性及侦听器如何使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Vue3中的计算属性及侦听器如何使用”文章能帮助大家解决问题。计算属性我们知道,在模板中可以直接通...
    99+
    2023-07-06
  • 如何使用watch监听路由变化和watch监听对象
    这篇文章主要介绍了如何使用watch监听路由变化和watch监听对象,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、watch监听路由变化...
    99+
    2022-10-19
  • SpringBoot中如何使用监听器
    今天小编给大家分享一下SpringBoot中如何使用监听器的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.监听器web监听...
    99+
    2023-06-29
  • 如何正确的使用servlet监听器
    如何正确的使用servlet监听器?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1.什么是servlet监听器?  servlet监听器也叫web监听器。是servlet中...
    99+
    2023-05-31
    servlet
  • vue3如何使用watch监听router的改变
    这篇文章主要介绍“vue3如何使用watch监听router的改变”,在日常操作中,相信很多人在vue3如何使用watch监听router的改变问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue3如何使用w...
    99+
    2023-07-04
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作