vue开发:vue中computed 和 watch的异同

VUE + VUEX 高频面试题合集 VUE + VUEX 高频面试合集 ❗ ❗ ❗ ❗ ❗ 阅读详情

vue中computed 和 watch的异同!

一、computed 和 watch 都可以观察页面的数据变化。当处理页面的数据变化时,我们有时候很容易滥用watch。 而通常更好的办法是使用computed属性,而不是命令是的watch回调。 
这里我直接引用vue官网的例子来说明:

html:

我们要实现 第三个表单的值 是第一个和第二个的拼接,并且在前俩表单数值变化时,第三个表单数值也在变化

<div id="myDiv">
    <input type="text" v-model="firstName">
    <input type="text" v-model="lastName">
    <input type="text" v-model="fullName">
</div>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

js: 用watch方法来实现

 new Vue({
  el: '#myDiv',
  data: {
    firstName: 'Foo',
    lastName: 'Bar',
    fullName: 'Foo Bar'
  },
  watch: {
    firstName: function (val) {
      this.fullName = val + ' ' + this.lastName
    },
    lastName: function (val) {
      this.fullName = this.firstName + ' ' + val
    }
  }
})
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

js: 利用computed 来写

  new Vue({
       el:"#myDiv",
            data:{
                firstName:"Den",
                lastName:"wang",

            },
            computed:{
                fullName:function(){
                    return  this.firstName  + " " +this.lastName;
                }
            }
   })
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

很容易看出 computed 在实现上边的效果时,是更简单的。

二 、 详解 comouted 计算属性。 
在vue的 模板内({{}})是可以写一些简单的js表达式的 ,很便利。但是如果在页面中使用大量或是复杂的表达式去处理数据,对页面的维护会有很大的影响。这个时候就需要用到computed 计算属性来处理复杂的逻辑运算。

1.优点: 
在数据未发生变化时,优先读取缓存。computed 计算属性只有在相关的数据发生变化时才会改变要计算的属性,当相关数据没有变化是,它会读取缓存。而不必想 motheds方法 和 watch 方法是的每次都去执行函数。

2.setter 和 getter方法:(注意在vue中书写时用set 和 get) 
setter 方法在设置值是触发。 
getter 方法在获取值时触发。

computed:{
   fullName:{
    //这里用了es6书写方法
        set(){
             alert("set");
        },
        get(){
           alert("get");
           return  this.firstName  + " " +this.lastName;
        },

   }
 }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

三 、watch 方法 
虽然计算属性在大多数情况下是非常适合的,但是在有些情况下我们需要自定义一个watcher,在数据变化时来执行异步操作,这时watch是非常有用的。

SuperPoint+SuperGlue在HLoc中的实战效果对比:5大公开数据集测试报告 本文在HLoc框架下,对传统SIFT与深度学习组合SuperPoint+SuperGlue在五大公开数据集上的视觉定位效果进行了实战对比测试。报告详细分析了两种方案在Aachen Day-Night、RobotCar Seasons等不同光照、季节及场景下的表现,揭示了SuperPoint+SuperGlue在应对剧烈光照变化和长期外观变化时的显著优势,并提供了基于HLoc模块化设计的选型与配置策略。 阅读详情

相关推荐

在昇腾910B上,用kubeadm快速拉起一个双节点K8s集群(保姆级避坑指南)

本文详细介绍了在昇腾910B服务器上使用kubeadm快速搭建双节点Kubernetes集群的完整流程,包括环境准备、容器运行时配置、kubeadm初始化、节点加入与网络插件部署等关键步骤,特别针对ARM架构和昇腾芯片提供了优化配置和避坑指南。

weixin_29204749的博客 244

vue2 中 computed 和 watch 的异同?

今天我来总结一下vue中computed 和 watch的异同!一、computed 和 watch 都可以观察页面的数据变化。当处理页面的数据变化时,我们有时候很容易滥用watch。 而通常更好的办法是使用computed属性,而不是命令是的watch回调。 这里我直接引用vue官网的例子来说明:html:我们要实现 第三个表单的值 是第一个和第二个的拼接,并且在前俩表单数值变化时,第三个表单数

webxiaoma 3万+

汽车ECU诊断入门:手把手教你用UDS协议(ISO14229)读取和清除故障码

本文详细介绍了如何使用UDS协议(ISO14229)进行汽车ECU诊断,包括故障码读取与清除的完整流程。从诊断环境搭建、UDS协议基础到实战案例分析,手把手教你掌握0x19诊断服务、安全访问机制等核心技能,适用于汽车电子工程师和诊断开发人员。

weixin_33701251的博客 451

vue中watch执行回调函数是异步的还是同步的

vue中watch执行回调函数是异步的还是同步的

weixin_42369612的博客 2590

洛谷 P5736 【深基7.例2】质数筛

题目描述 输入 n(n\le100)n(n≤100) 个不大于 100000 的整数。要求全部储存在数组中,去除掉不是质数的数字,依次输出剩余的质数。 输入格式 无 输出格式 无 输入输出样例 输入 #1 复制 5 3 4 5 6 7 输出 #1 复制 3 5 7 板子题,使用一下线性筛 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using n

qq_37978559的博客 1117

SAP CO实战:如何用KKA2/CJ88结果分析码搞定项目收入成本匹配(附真实案例)

本文深入解析了SAP CO模块中结果分析码KKA2/CJ88的核心应用,通过真实案例详细阐述了如何在成本波动剧烈的销售型项目中,运用结果分析实现收入与成本的精准匹配。文章重点拆解了不同结果分析方法的适用场景与财务影响,并提供了从配置、操作到问题排查的完整实战指南,帮助财务顾问提升项目财务管理能力。

qsc9012345的博客 606

Vue中computed和watch区别

watch和computed都是以Vue的依赖追踪机制为基础的,当某一个依赖型数据发生变化的时候,所有依赖这个数据的相关数据会自动发生变化,即自动调用相关的函数,来实现数据的变动。当依赖的值变化时,在watch中,可以做一些复杂的操作,而computed中的依赖,仅仅是一个值依赖于另一个值,是值上的依赖。最近找到一个VUE的文档,它将VUE的各个知识点进行了总结,整理成了《Vue 开发必须知道的36个技巧》。内容比较详实,对各个知识点的讲解也十分到位。

小陈的博客 1万+

别再踩坑了!手把手教你用EB Tresos Studio创建Autosar MCAL工程(含模块配置避坑指南)

本文详细介绍了使用EB Tresos Studio创建Autosar MCAL工程的完整流程,包括工程创建前的关键准备、模块配置的避坑指南以及工程验证与代码生成的实用技巧。通过实战案例和黄金准则,帮助开发者高效完成MCAL工程创建,避免常见错误,提升开发效率。

weixin_42536058的博客 444

vue2中watch的使用

(2)把要监听的msg值看作对象,利用hanler方法来进行监听。(2)可以只监听对象的其中一个属性值 ’对象.属性‘ 的形式。(1)把要监听的msg值看作方法名,来进行监听。(1)(一维、多维)数组的变化不需要深度监听。(2)数组对象中对象属性变化监测需要使用。深度监听,多少层内产生变化都可以监测到。(1)监听对象需要用到深度监听,设置。字符串,布尔值,number。

前端很杂,故名前端杂货铺 —— coderkey 2万+

FID指标实战:如何用Python快速计算生成图像的质量分数(附完整代码)

本文详细介绍了如何使用Python计算Fréchet Inception Distance(FID)指标,以评估生成图像的质量。通过完整的代码示例和优化技巧,帮助开发者快速实现FID计算,并解读分数背后的实际意义,适用于GAN和扩散模型的性能评估。

weixin_28718487的博客 375

【软件测试】- 公有云、私有云、混合云简介以及如何在公有云与私有云上分别搭建测试环境

公有云、私有云以及混合云是目前云计算领域的三种主要模式。它们之间的区别主要在于部署方式、数据访问和管理控制的不同。在阿里云或腾讯云上使用 Kubernetes 和 Docker 搭建测试环境可以提供高度的可伸缩性和灵活性。这样的环境非常适合于需要在多种配置和条件下进行测试的复杂应用。通过云服务提供的工具和服务,可以轻松管理和监控整个测试过程。在云服务上搭建测试环境涉及选择合适的云提供商、配置云资源、安装和设置所需软件等步骤。### 1. 选择云服务提供商。

weixin_46453070的博客 2338

vue中watch的详细用法

在vue中,使用watch来响应数据的变化。watch的用法大致有三种。 1.最简单的watch用法 <input type="text" v-model="cityName"/> new Vue({ el: '#root', data: { cityName: 'shanghai' }, watch: { cityName(newName, oldN...

菜鸟启程 837

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

VUE watch与computed异同

在vue的项目中,我们时常会需要对data的改变做出处理,这时候就需要用到watch和computed这两个属性,既然都是数值改变触发改变的属性,他们之间又有什么异同呢?笔者将在接下来进行解析 computed:计算属性 通过属性计算而得来的属性 1. get用法 data: { firstName: 'Liu', lastName: 'lu' }, computed: { fullName: function () { return this.firstName + '.

ii窝窝头的博客 966

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Vue中的监视属性watch和计算属性computed

vue中watch和computed复习

m0_63836635的博客 1068

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

watch和computed异同

关于Vue中的watch和computed异同Vue依赖追踪机制作用机制上从性质上看计算属性缓存 vs 方法计算属性 vs 侦听属性总结 今天公司实习生问了一个有关watch和computed有啥区别,平时用的时候并没有过多的考虑两者的使用场景,总结一下他们的异同。 Vue依赖追踪机制 首先要说,methods,watch和computed都是以函数为基础的,但各自却都不同 作用机制上 侦听属...

weixin_44277348的博客 830

Vue面试常见知识总结3——computed|watch|method、路由、nextTick、组件间通讯

Vue面试常见知识总结3——computed|watch|method、路由、nextTick、组件间通讯

警警的博客 1544

computed和watch的使用场景以及区别

computed computed适用于动态计算data里的属性值,必须加return,不能对data里的属性进行赋值,当无变化时会先从缓存里读取。 使用场景:当一个值受多个属性影响的时候 computed: { btnText(){ return this.totalCount !== 0 ? `${this.totalCount}s`: "获取验证码" } } watch watch是监听data里的值的变化,当data中的属性发生改变的时候,watch中的函数就会执

nick_zhang的博客 5355

浅谈 Computed和Watch的区别

computed 计算属性 类似于过滤器,对绑定到试图的数据进行处理,并监听变化进而执行对应的代码 基于它的依赖缓存,只有相关依赖发生改变时才会重新取值。而使用methods时,在重新渲染的时候,函数总会重新调用执行 computed属性默认的只有getter watch 监听属性 通过watch来响应数据的变化 watch 选项允许我们执行异步操作 (访问一个 ...

qq_38188762的博客 1860

使用computed_前端开发:Vue中computed和watch对比使用

最近在整理前端开发的知识点的时候,又找到了一个可以做对比说明的知识点,为了方便归纳记录,本篇博文就把前端开发过程中常用的Vue中computed和watch做对比举例说明。首先先来了解一下computed和watch二者的基本定义和功能:1、computedcomputed,顾名思义,字面意思是计算,那么就和计算有关。在Vue中,computed是计算属性,主要功能是监听观察页面数据变化...

weixin_28727975的博客 168

methods、computed、watch 三者的区别三者之间的共同点

参考:https://www.cnblogs.com/widgetbox/p/8954162.html 共同点 methods,watch 和 computed 都是以函数为基础的 computed 与 watch 都是以 Vue 的依赖为基础,当所依赖的数据发生变化的时候会(自动(自动执行))触发相关的函数去实现数据的变动 methods 里面是用来定义函数的,需要手动才能执行 不同点 computed: computed 是一个计算属性,computed 所依赖的属性发生变化时,计算属性才会重新计算,并

码上行动 484

[vue报错]之Computed property "XXX" was assigned to but it has no setter.

首先定位可以知道的是: 在使用computed的时候出现的问题: 这里提示我们需要使用setter, 我也是一脸懵逼, 什么是setter, computed为什么需要setter, 和我有什么关系, 带着这个疑问我们打开vue 的官网, 毕竟遇到问题, 先看官网文档 我们发现: vue 关于 computed的说明 明确一点的是, computed中, 可以设置两个属性, 一个get , 一...

ZHXT__的博客 3560

【Vue3中watch属性详解】

当被监视的属性变化时,回调函数自动调用,进行相关操作,所谓监视属性,就是监测指定的属性是否发生变化,如果发生了,则进行一系列操作,如果没发生变化,则监视属性也不会被触发。

小田是个程序员的博客欢迎你的到来呀~ 2万+

Vue与React的异同-组件(二)

Vue与React都鼓励组件化应用,即将应用分拆成一个个功能明确的模块,每个模块之间可以通过合适的方式互相联系,但各自的实现略有不同。以下谈谈我的理解,如有不对,欢迎指正 在Vue组件中,有几个观念和React相差比较大,我觉得主要有以下这几点: Vue组件分为全局注册和局部注册,在react中都是通过import相应组件,然后模版中引用 props是可以动态变化的,子组件也实时更新,在r

吴孔云的博客 3727

11+实战技巧,让你轻松从Vue过渡到React

setIsShow(!isShow)return ({/* 也可以用三目运算符 */}前端胖头鱼 显示出来啦isShow &&前端胖头鱼 显示出来啦。

2501_90256993的博客 943

2020年前端面试题

节前公司突然决定解散技术部,整的小伙伴们手忙脚乱,怎么好好的公司就突然要解散呢!博主刚来这个公司才4个多月,被整的一脸懵逼。剩下就是一些扯皮的事,遇到这么坑的公司也是没有办法。都说金九银十,称这大好的日子赶紧去面试找个靠谱的公司吧!下面整理了一些前端面试题,希望能给在找工作的小伙伴一些帮助。 基础的面试题,在这里就不一一说了,主要说一下进阶的面试题。 一、Vue Key指令的作用 key是为每个vnode指定唯一的id,在同级vnode的Diff过程中,可以根据key快速的进行对比,来判断是否为相同节

Yiu的博客 356

VUE面试题

标题1, 如何让CSS只在当前组件中起作用(vue中如何实现样式隔离)? 在组件中的style前面加上scoped 标题2, 的作用是什么? keep-alive 是 Vue 内置的一个组件,可以使被包含的组件保留状态,或避免重新渲染。 标题3, vue组件中如何获取dom元素? 使用ref属性获取, 在组件模板元素中添加ref属性, 在js中用this.$refs获取 标题4, 说几个vue中的指令和它的用法? v-model双向数据绑定; v-for循环; v-if, v-show 显示与隐藏; v-b

qq_51050856的博客 510
上一篇: javascript开发:数组Array探究
下一篇: vue开发:vue全局组件的方法
Generon
博客等级 码龄11年 135粉丝 135原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值