vue中watch和computed的区别是什么啊,vue中methods表示

  vue中watch和computed的区别是什么啊,vue中methods表示

  方法,watch和computed都是基于函数的,但是都不一样。本文主要介绍vue.js中关于方法watch和computed区别的相关信息,有需要的可以参考一下。

  

目录

  前言介绍一、作用机理二。手表和计算机III的比较。四。方法不处理数据的逻辑关系,只提供可调用的函数v .从互补函数的角度看方法。不及物动词使用computed处理特定情况下手表代码的冗余,简化代码。

  摘要

  电脑手表

  

前言

  本文主要介绍手表和电脑在vue上的区别,以及方法。

  首先,我们来说说这些区别。当然,他们看起来不一样~ ~ ~,

  哈哈哈哈不开玩笑,长话短说,直奔主题。

  

介绍

  方法:安装在对象上的函数,通常是Vue实例本身或Vue组件。

  计算机:属性看起来像方法,其实不是。在Vue中,我们通常使用数据来跟踪属性的变化。计算允许我们定义一个与数据使用相同方式的属性,但也可以有一些基于其依赖关系的自定义逻辑。您可以考虑计算数据属性的另一种视图。

  观察:这些可以让你了解反应系统。我们提供了一些钩子来观察Vue存储的任何属性。如果我们希望在每次发生变化时添加一些功能,或者对特定的变化做出响应,我们可以观察一个属性并应用一些逻辑。这意味着观察者的名字必须与我们观察到的一致。

  光凭这几个字,根本分不清三者的区别。接下来,我们举个例子:

  

一、作用机制上

  Computed\watch:watch和Computed都是基于Vue的依赖跟踪机制。他们都试图处理这样一件事:当某个数据(称为依赖数据)发生变化时,所有依赖这个数据的“相关”数据都“自动”发生变化,即自动调用相关函数来实现数据的变化。

  方法:方法用于定义函数。很明显,需要手动调用才能执行。与“自动执行”预定义函数的watch和computed不同。

  【概要】:方法其中定义的函数需要主动调用,而与watch、computed相关的函数会自动调用,完成我们希望完成的功能。

  

二、从性质上

  1.方法定义一个函数。你显然需要像 fuc()一样调用它(假设函数是fuc)。

  2.computed是一个计算属性,它实际上与数据对象中的数据属性(used)相同

  例如:

  计算值:{

  全名:function(){ return this . first name last name }

  }

  访问的时候用this.fullName访问,就像取数据一样(不要把它当函数调用!)

  3.watch:类似于监控机制的事件机制

  例如:

  观察:{

  名字:函数(val){ this . full name=val this . last name }

  }

  名字的变化是这个特殊“事件”被触发的条件,名字对应的功能相当于事件被监听后执行的方法。

  

三、watch和computed的对比

  看

  计算

  一个数据影响多个数据。

  一个数据受多个数据影响。

  Watchcomputed:一个数据影响多个数据,一个数据受多个数据影响。

  

四、methods不处理数据逻辑关系,只提供可调用的函数

  与watch/computed相比,methods不处理数据的逻辑关系,只提供可调用的函数。

  新Vue({

  埃尔: #app ,

  模板: div p{{ say() }}/p/div ,

  方法:{

  跟大家讲:function () {

  回复“我在外国很好”

  }

  }

  })

  

五、从功能的互补上看待methods,watch和computed的关系

  很多情况下,computed用于处理使用watch和方法时无法处理的情况,或者不适合处理的情况。

  使用computed处理方法中的重复计算

  1.1.methods中的函数是一群“诚实坦率的男孩”。如果其他父函数调用它,它每次都会“顺从地”执行并返回结果,即使这些结果很可能是相同的,也是不必要的。

  2.computed是个“心机男孩”,会基于Vue提供的依赖追踪系统。只要依赖关系数据没有改变,computed就不会再次计算。

  

六、利用computed处理watch在特定情况下代码冗余的现象,简化代码

  

总结

  

computed

  默认情况下,计算属性值被缓存,计算属性根据其响应依赖关系被缓存,也就是说,它们是根据data中声明的数据计算的。

  如果一个属性是由其他属性计算出来的,这个属性依赖于其他属性,而且是多对一或者一对一,一般是计算出来的。

  如果计算属性的属性值是函数,默认取get方法;函数的返回值是属性的属性值;在computed中,所有属性都有一个get方法和一个set方法。当数据改变时,调用set方法。

  计算的计算属性是根据依赖关系缓存的计算,仅在需要时更新。

  

watch

  的监控功能接收两个参数,第一个参数是最新值;第二个参数是输入前的值;

  计算的(计算的属性)

  观察(倾听属性)

  支持缓存,只有当依赖数据发生变化时,才会重新计算。

  不支持缓存,数据变化会直接触发相应的操作;

  不支持异步操作。当computed中存在异步操作时,该操作无效,并且无法监控数据变化。

  手表支持异步;

  好了,这篇关于vue.js中方法watch和computed的区别的文章就到此为止,更多关于vue中方法watch和computed的区别,请搜索我们之前的文章或者继续浏览下面的相关文章。希望大家以后能多多支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: