标签:func reverse 通过 put watch edm 定义 赋值 处理
通俗来讲,
1. computed是在HTML DOM加载后马上执行的,如赋值;
2. methods则必须要有一定的触发条件才能执行,如点击事件;
3. watch它用于观察Vue实例上的数据变动。对应一个对象,键是观察表达式,值是对应回调。值也可以是方法名,或者是对象,包含选项。
所以他们的执行顺序为:默认加载的时候先computed再watch,不执行methods;等触发某一事件后,则是:先methods再watch。
computed称为计算属性,顾名思义,计算就要返回一个计算的结果,所以,当我们要处理大量的逻辑,但是最后要取得最后的结果的时候可以用computed。
简单示例: 要求:
<input type="text v-model="num1"><input type="text v-model="num2">
现在要返回num1和num2的和;
<script> new Vue({ el:"#box", data:{ num1:0, num2:0 } computed:{ result:function(){ return this.num1 + this.num2 // 计算属性必须有一个返回值 } } }) </script>
methods:是方法的意思,在js中,我们把一些函数叫做方法,一般情况下,要触发这个方法就要执行,要执行就要有一个源来触发,所以就需要一个事件源,这是和computed的一点不同之处。
methods的示例:要求:
<button @click="do()">点击弹出<\/button> <script> new Vue({ el:"#box", data:{ num1:0, num2:0 } methods:{ do:function(){ alert(‘ok‘) //这里根据情况,可以返回有返回值也可以没有返回值。 } } }) </script>
<div id="example"> <p>Original message: "{{ message }}"</p> <p>Computed reversed message: "{{ reversedMessage }}"</p> </div> var vm = new Vue({ el: ‘#example‘, data: { message: ‘Hello‘ }, computed: { reversedMessage: function () { return this.message.split(‘‘).reverse().join(‘‘) } }, methods: { reverseMessage: function () { return this.message.split(‘‘).reverse().join(‘‘) } } })
标签:func reverse 通过 put watch edm 定义 赋值 处理
原文地址:http://www.cnblogs.com/lmjZone/p/7739306.html