当前位置: 首页 > news >正文

Vue3:详解toRefs

它是什么?

toRefs 把reactive 对象变成能解构的响应式对象。解构出来的每个属性都是 ref

解决了什么问题?

直接解构 reactive 对象会丢失响应式:

const state = reactive({ name: '张三', age: 25 })// ❌ 直接解构 - 响应式丢失
const { name, age } = state
state.name = '李四' // name 不会变!// ✅ 使用 toRefs - 保持响应式
const { name, age } = toRefs(state)
state.name = '李四' // name.value 同步更新!

核心用法

在 setup 函数中

import { reactive, toRefs } from 'vue'export default {setup() {const state = reactive({name: '张三',age: 25})return {...toRefs(state) // 模板中可以直接用 {{name}} {{age}}}}
}

在组合式函数中

function useCounter() {const state = reactive({count: 0,double: computed(() => state.count * 2)})return {...toRefs(state), // 使用者可以安全解构increment: () => state.count++}
}// 使用
const { count, double, increment } = useCounter()

重要特性

  1. 保持连接:修改 ref 或原对象,两边都会同步更新
  2. 模板自动解包:模板里直接用 {{name}},不需要 .value
  3. JS 中需要 .value:在 JavaScript 代码里要写 name.value

使用场景

  1. 从 setup 返回数据给模板用
  2. 组合式函数返回多个响应式数据
  3. 需要解构 reactive 对象但不想丢响应式

一句话:想解构 reactive 对象又不丢响应式,就用 toRefs。

http://www.dtcms.com/a/594675.html

相关文章:

  • 性价比高的建筑设备监控管理系统企业
  • 网站建设好吗网站建设与制作实训报告
  • 如何做好网站推广营销WordPress最强大的主题
  • 免费室内设计素材网站网站建站基本要素
  • P4198 楼房重建 题解
  • asp网站例子一套公司vi设计多少钱一
  • YOLOv5(一):目录结构 学习顺序
  • 密云建站推广电子商务网站建设考试
  • Python | 常用的控制流语句及工作原理
  • 网站建设公司有哪些方面郑州妇科
  • seo综合查询网站源码微网站建设招聘
  • Linux 重定向与Cookie
  • 24G毫米波雷达实现风扇跟随人转动,精准智能,节能省事
  • 杭州网站建设洛洛科技权威的唐山网站建设
  • 广东省省考备考(第一百四十六天11.10)——资料分析、数量关系(强化训练)
  • 自己做的网站无法访问网站页面设计招聘
  • CommonJS 与 ES Module 完全入门指南:从基础概念到项目实战
  • dedecms 调用 另一个网站凡科网站怎样做
  • 建立自己的平台网站吗如何做网站小编
  • 一个数据库两个网站wordpress登陆重庆网站托管
  • 烟台专业做网站公司哪家好百度云虚拟主机搭建wordpress
  • 网站设计的公司皆选奇点网络招商网站建设
  • 使用Linux终端进行文件操作
  • 网上请人做软件的网站wordpress驳回评论
  • 高光谱成像实现石质文物劣化情况的评估,助力文物保护
  • Vue 项目实战《尚医通》,完成医院详情模块业务,笔记20
  • 怎样在网站做推广开贴纸网站要怎么做的
  • 可以做课程的网站wordpress更改图片上传路径
  • 华清远见25072班单片机基础学习day1
  • 「C++」vector的使用及接口模拟详解