1.computed计算属性是用来存储数据,但具有以下几个特点:
a.数据可以进行逻辑处理操作。
b.对计算属性中的数据进行监视。
2.计算属性和普通属性的区别:
a.计算属性是基于它的依赖进行更新的,只有在相关依赖发生改变时才能更新变化
b.计算属性是缓存的,只要相关依赖没有改变,多次访问计算属性得到的值是之前缓存 计算的结果,不会多次执行。
3.get和set
计算属性中包含了set(获取计算属性)和get(设置计算属性)两个方法(回调函数)
get回调函数: 当需要读取当前属性值时调用,根据相关的数据计算并返回当前属性的值
set回调函数: 监视当前属性值发生改变时调用,更新相关的属性值
默认是只有get,如果需要set,需要自己手动添加
<div id="app"> <p>{{ num }}</p> <p>{{ num1 }}</p> <button @click='changeNum1'>点击改变num1的值</button> </div>
复制
data(){ return:{ num:8 } }, computed:{ num1:{ get:function(){//必须有返回值,用来获取属性,称为get函数 return this.num-1; }, set:function(val){ console.log('修改num1的值'); this.num = 11; } } }, methods:{ changeNum1:function(){ this.num1 = 11; } }
复制