标签:rev 适合 log 缓存 sage script javascrip lang ret
计算属性 computed
<div id="app">
<!--
当多次调用 reverseString 的时候
只要里面的 num 值不改变 他会把第一次计算的结果直接返回
直到data 中的num值改变 计算属性才会重新发生计算
-->
<div>{{reverseString}}</div>
<div>{{reverseString}}</div>
<!-- 调用methods中的方法的时候 他每次会重新调用 -->
<div>{{reverseMessage()}}</div>
<div>{{reverseMessage()}}</div>
</div>
<script type="text/javascript">
/*
计算属性与方法的区别:计算属性是基于依赖进行缓存的,而方法不缓存
*/
var vm = new Vue({
el: ‘#app‘,
data: {
msg: ‘Nihao‘,
num: 100
},
methods: {
reverseMessage: function(){
console.log(‘methods‘)
return this.msg.split(‘‘).reverse().join(‘‘);
}
},
//computed 属性 定义 和 data 已经 methods 平级
computed: {
// reverseString 这个是我们自己定义的名字
reverseString: function(){
console.log(‘computed‘)
var total = 0;
// 当data 中的 num 的值改变的时候 reverseString 会自动发生计算
for(var i=0;i<=this.num;i++){
total += i;
}
// 这里一定要有return 否则 调用 reverseString 的 时候无法拿到结果
return total;
}
}
});
</script>
***注意:计算属性与方法的区别:计算属性是基于依赖进行缓存的,而方法不缓存***
标签:rev 适合 log 缓存 sage script javascrip lang ret
原文地址:https://www.cnblogs.com/UnfetteredMan/p/13932166.html