zoukankan      html  css  js  c++  java
  • vue中的methods、computed和watch

    1、computed属性:

    经过处理返回的数据值,只要源数据没有发生改变,computed函数里面对相应的数据就不会反生改变,相当于缓存在本地;发生改变的时候,computed对应数据的函数才会发生改变。

    2、computed属性和methods属性:

    你可能已经注意到我们可以通过调用method来达到同样的效果:我们可以将同一个函数定义为一个method而不是一个计算属性,对于最终的结果,两种方式确实是相同的,

    
        然而,计算属性是基于他们的依赖就行缓存的,计算属性只有在它相关的依赖发生改变时才会重新求值,这意味着只要message 还没有发生改变,多次访问reversedMessage计算属性会立刻返回之前计划算的结果,而不必再次执行函数.这也同样意味着下面的计算属性将不再更新,
    

    相比而言,只要发生重新渲染,method调用总会执行该函数;
    我们为什么需要缓存?假设我们有一个性能开销比较大的计划属性A,
    它需要便利一个极大的数组和做很大量的计算,然后我们可能尤其他的计算属性依赖A,
    如果没有缓存,我们将不可避免的多次执行A的geteer,如果你不希望有缓存,请用methods代替;
    因为Date.now()不是响应式依赖;

    3、computed属性与watch属性:

    vue确实提供了一种更通用的一种方式来观察和响应Vue实例上的数据变动:watch属性;当你有一些数据需要随着其他数据进行便动,你会很容易滥用watch--特别是你之前使用过AngularJS.然后,通常更好的想法就是使用computed属性而不是命令式的watch回调。

    原文地址:https://segmentfault.com/a/1190000012708275

  • 相关阅读:
    JsonParse类
    vs2013提交项目到github
    js选中select
    按每20条分组查询
    批量修改图片格式
    当前日期后10天日期
    C#生成不重复随机数的方法
    接收端通过Request.InputStream读取流
    C#文件流的读写
    C#中HttpWebRequest的用法详解
  • 原文地址:https://www.cnblogs.com/lalalagq/p/9960199.html
Copyright © 2011-2022 走看看