vue的计算属性get和set

vue的计算属性get和set 

1.计算属性是用来存储数据,但具有以下几个特点:
  a.数据可以进行逻辑处理操作。

  b.对计算属性中的数据进行监视。

2.计算属性和普通属性的区别:

  a.计算属性是基于它的依赖进行更新的,只有在相关依赖发生改变时才能更新变化

  b.计算属性是缓存的,只要相关依赖没有改变,多次访问计算属性得到的值是之前缓存计算的结果,不会多次执行。

3.get和set

  计算属性由两部分组成,get和set,分别用来获取计算属性和设置计算属性。

  默认只有get,如果需要set,要自己添加

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<script type="text/javascript">
    window.onload=function(){
        let vm = new Vue({
            el:"#app",
            data:{
                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;
                }
            }
        })
    }
</script>

html:

1
2
3
4
5
<div id="app">
    <p>{{ num }}</p>
    <p>{{ num1 }}</p>
    <button @click='changeNum1'>点击改变num1的值</button>
</div>
原文地址:https://www.cnblogs.com/1549983239yifeng/p/14378320.html