【vue练习 -06】vue3计算属性computed

使用:vue3老套路,使用前需要手动引入import {computed} from 'vue'

简写形式:直接给computed传一个回调函数,然后函数返回值就是你计算好的值

完整写法:直接给computed传一个对象,配置get与set

大致套路跟vue2一样的

<template>
  <input type="text" v-model="person.firstName" />
  <input type="text" v-model="person.lastName" />
  <span>全名:{{person.fullName}}</span>
  <input type="text" v-model="person.fullName">
</template>

<script>
import {reactive,computed} from 'vue'
export default {
  name: "",
  emits: ["changeValue"],
  setup() {
    let person = reactive(
        {firstName:'张',lastName:'三'}
    )
    // 直接往对象里面追加一个属性
    // 计算属性接收一个回调函数参数

    // 简单写法,不考虑计算属性会被修改的情况下使用
    person.fullName = computed(()=>{
        // 计算完后要把计算值返回
        return person.firstName+'-'+person.lastName
    })

    // 完整写法传一个对象
        person.fullName = computed({
            // 读取时调用
            get(){
                return  person.firstName+'-'+person.lastName
            },
            // 修改时调用,value是修改后的值
            set(value){
                let arr = value.split('-')//以'-'为准拆分字符串为数组
                person.firstName = arr[0]
                person.lastName = arr[1]
            }
        })

    return {
        person
    };
  },
};
</script>

<style lang="" scoped>
</style>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
vue-async-computed.js是一个用于Vue.js的库,它扩展了Vue中的计算属性功能,使之可以支持异步数据获取和计算Vue.js计算属性是在模板中根据数据的变化实时计算出新的结果,并实时更新到视图中。然而,在某些情况下,数据的获取和计算可能会涉及异步操作,如从服务器获取数据或处理复杂的计算逻辑。此时,普通的计算属性就不再适用,需要使用异步计算属性才能处理这样的情况。 异步计算属性提供了一个方便的方式来处理异步数据的获取和计算。它的用法类似于普通的计算属性,但是需要使用一个异步函数来定义计算属性的逻辑。这个异步函数可以返回一个Promise对象,用于表示异步操作的结果。 在异步函数中,我们可以执行异步操作,如发送网络请求、读取本地存储等。当异步操作完成后,我们可以通过Promise的resolve方法返回计算属性的结果。在模板中使用异步计算属性时,Vue会自动等待异步操作完成并获取到计算属性的结果,然后更新视图中相应的内容。 通过使用vue-async-computed.js,我们可以轻松地处理复杂的异步计算逻辑,如缓存异步计算结果、处理异步错误等。它的简单易用和强大的功能使得我们可以更加方便地开发处理异步数据的应用程序。无论是获取远程数据还是处理复杂的计算逻辑,vue-async-computed.js都可以帮助我们减少工作量,提高开发效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值