zoukankan      html  css  js  c++  java
  • vue计算属性computed和methods的区别

     1 在new Vue的配置参数中的computed和methods都可以处理大量的逻辑代码,但是什么时候用哪个属性,要好好区分一下才能做到正确的运用vue。
     2 computed称为计算属性,顾名思义,计算就要返回一个计算的结果,所以,当我们要处理大量的逻辑,但是最后要取得最后的结果的时候可以用computed;
     3 简单示例:
     4 要求:
     5 <input type="text v-model="num1"><input type="text v-model="num2">
     6 现在要返回num1和num2的和;
     7 <script>
     8     new Vue({
     9         el:"#box",
    10         data:{
    11                 num1:0,
    12                 num2:0
    13                 }
    14         computed:{    
    15                 result:function(){
    16                         return this.num1 + this.num2    
    17                         // 计算属性必须有一个返回值
    18                 }
    19         }
    20      })
    21 </script>
    22  
    23 methods:是方法的意思,在js中,我们把一些函数叫做方法,一般情况下,要触发这个方法就要执行,要执行就要有一个源来触发,所以就需要一个事件源。这是和computed的一点不同之处;
    24 methods的示例:
    25 要求:
    26 <utton @click="do()">点击弹出</button>
    27 <script>
    28     new Vue({
    29         el:"#box",
    30         data:{
    31                 num1:0,
    32                 num2:0
    33                 }
    34         methods:{    
    35                 do:function(){
    36                       alert('ok')
    37                       //这里根据情况,可以返回有返回值也可以没有返回值。
    38                 }
    39         }
    40      })
    41 </script>
    42  
    43 对比computed 和 methods:
    44 computed计算的结果如果不发生改变就不会触发result这个函数。而methods中一般都是定义的需要事件触发的一些函数。每次只要触发事件,就会执行对应的方法。如果把computed中的方法写到methods中会浪费性能。
    45 computed必须返回一个值页面绑定的才能取得值,而methods中可以只执行逻辑代码,可以有返回值,也可以没有。

    参考文章:https://www.cnblogs.com/rainbow8590/p/7251824.html

  • 相关阅读:
    运算符、流程控制
    python数据类型
    Python入门基础
    pandas教程1:pandas数据结构入门
    使用matplotlib绘制多轴图
    使用matplotlib快速绘图
    浙江省新高中信息技术教材,将围绕Python进行并增加编程相关知识点
    [转]ubuntu搭建LAMP环境
    [转]字体精简
    [转]安装PIL时注册表中找不到python2.7
  • 原文地址:https://www.cnblogs.com/oaoa/p/14471687.html
Copyright © 2011-2022 走看看