vue计算属性

计算属性是Vue中用于创建基于现有数据的衍生属性的功能。它们利用defineProperty实现,提供get和可选的set方法。当依赖的data属性变化时,计算属性会自动更新。如果只读,只需定义get;若需设置,需同时定义set以响应属性更改。计算属性的get调用在初次渲染和依赖变更时,且利用缓存提高性能。
摘要由CSDN通过智能技术生成

计算属性

定义:要用的属性不存在,通过已有得属性计算得来

原理:借助底层的defineproperty来实现!!!!!


当我们确定计算属性不需要修改的时候我们只需要写get函数,简写成:

    <script>
        new Vue({
            el:"#root1",
            data:{
                first:"zhang",
                second:"san",
            },
            computed:{
                fun(){
                    return this.first+'-'+this.second
                }
            }
        })
    </script>

当我们还要写set函数的时候

<div id="root1"><input type="text" v-model="first"><br><input type="text" v-model="second"><br>
        <span>{{fun}}</span>
    </div>

    <script>
        new Vue({
            el:"#root1",
            data:{
                first:"zhang",
                second:"san",
            },
            computed:{
                fun:{
                    get(){
                        return this.first+'-'+this.second
                    },
                    set(value){
                        let arr=value.split('-')
                        this.first=arr[0]
                        this.second=arr[1]
                    }
                }
            }
        })
    </script>

get函数:

当有人读取我们的计算属性的时候我们会去调用我们get函数,然后返回值作为计算属性的值。

get函数的调用时机

1.初次读取计算属性的时候
2.依赖的属性发生改变的时候

其余时候将会产生一个缓存,因为这个缓存的存在我们能减少不少vue的负担(复用)

set函数

当计算属性要被修改的时候,我们就必须要写set函数去响应

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值