toRef,toRefs函数的作用

本文介绍了Vue中如何使用`toRef`和`toRefs`方法将数据转换为响应式,特别关注了如何处理多层级数据以确保只有第一层是响应式的,以及在模板中的应用实例。
摘要由CSDN通过智能技术生成

toRef:将数据转成响应式

toRefs:将多个数据转成响应式

注意:toRefs将多个数据转成响应式,只是确保第一层数据为响应式,如果是不同层的数据,仅第一层数据为响应式

<template>
  <div>
    <p>{{ name }}-{{ obj.name }}</p>
    <p>{{ job }}</p>
    <p>{{ city }}</p>
  </div>
</template>

<script setup>
import  { ref, toRef, toRefs,reactive} from 'vue'
const obj = reactive({
   name: 'zs',
   sex:'男',
   job: {
    jobname: 'h5工程师',
    city: 'shanghai'
   }
})
// 直接解构会丢失响应式
// const { name } = obj
// const name = toRef(obj, 'name') // 返回值是一个ref对象
// const city = toRef(obj.job, 'city')
// console.log(name.value);
const  { name, job} = toRefs(obj)
const { city } = toRefs(obj.job)

</script>

<style lang="scss" scoped>

</style>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值