【2024】前端学习笔记19-ref和reactive使用

embedded/2024/11/27 11:55:26/

学习笔记

  • 1.ref
  • 2.reactive
  • 3.总结

1.ref

ref是 Vue 3 中用来创建响应式引用的一个函数,通常用于基本数据类型(如字符串、数字、布尔值等)或对象/数组的单一值。

ref特点:

  • ref 可以用来创建单个响应式对象
  • 对于 ref 包裹的值,你需要通过 .value 来访问和修改它的值
  • 在模板中,Vue 会自动解包 ref 对象,所以可以直接使用 count 而不需要 .value

示例:

// 使用ref创建一个名为name的响应式变量,初始值为yyang
const name = ref('yyang')
// 将这个变量的情况输出在控制台 上
console.log(name)

输出:
在这里插入图片描述
其中的value就是变量name的值,如果要想修改值得内容,直接修改是不行得,需要使用以下得方法:

name.value = 'xxxxx'

输出:
在这里插入图片描述

2.reactive

reactive 用于创建一个响应式对象。它是针对复杂对象(如对象、数组、Map、Set 等)设计的。reactive 会自动使整个对象变成响应式。

reactive特点 :

  • reactive 适用于对象或数组(包括嵌套对象和数组),可以让整个对象变为响应式
  • 不需要通过 .value 来访问值,直接使用对象的属性进行操作
  • reactive 返回的是一个代理对象,所有对这个对象的操作都会自动追踪和反应

示例:

// 使用 reactive 创建了一个包含用户信息(姓名和年龄)的响应式对象 state
const state = reactive({user: {name: 'yyang',age: 18}
})
// 通过 console.log 打印出 state.user,即显示 user 对象的内容
console.log("state的信息:", state.user)

输出:

在这里插入图片描述
如果需要更新属性,比如更新name为bobo,只需要这样:

state.user.name = 'bobo';

3.总结

何时使用 ref 或 reactive:

ref 适用于 基本类型 和 需要包装为响应式的单一对象,例如:

  • 用来存储数字、字符串、布尔值等。
  • 如果只是管理一个简单的状态,比如计数器。

reactive 适用于 复杂对象 或 多个相关的属性,例如:

  • 用来存储一个包含多个属性的对象,或者是包含多个元素的数组。
  • 当需要修改和操作复杂数据结构时,reactive 更加方便。

总结:

  • ref 更适合简单的值和对基本数据类型的响应式处理(需要 .value 来访问)。
  • reactive 更适合处理对象和数组等复杂数据结构,可以直接操作对象的属性。

http://www.ppmy.cn/embedded/140888.html

相关文章

PHP中类名加双冒号的作用

在 PHP 中,类名加双冒号(::) 是一种用于访问类的静态成员和常量的语法。它也可以用来调用类的静态方法和访问 PHP 的类相关关键词(如 parent、self 和 static)。以下是详细的解释和用法。 1. 用途概述 :: 被称为作用域…

链表中倒数最后k个结点 (双指针法)(难易度:简单)

双指针法是一个高效的算法,用来解决链表中倒数第 (k) 个节点的问题。以下是详细的通俗讲解: 基本思路 使用两个指针 fast 和 slow。首先让 fast 指针先走 (k) 步,这样它就比 slow 指针领先 (k) 个节点。然后同时移动 fast 和 slow 指针&…

Qt实现窗口内的控件自适应窗口大小

前言:因为有时候窗口内的控件比较大,但是为了同时操作多个窗口,希望可以根据情况,在调整窗口大小时,控件能自适应大小,于是通过遍历整个界面内的控件,并在调整大小的事件中按比率调整控件大小实…

Python设计模式详解之16 —— 观察者模式

Python 中的 Observer(观察者)设计模式 是一种行为型设计模式,用于定义一种订阅机制,让多个观察者对象在某一对象的状态发生变化时自动接收到通知。该模式常用于事件驱动的架构,例如 GUI 系统、消息推送系统等。 Obser…

打造优秀技术文档的三大方向

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…

摄像机视频分析软件下载LiteAIServer视频智能分析平台裸土检测算法防范山体滑坡

在雨水丰沛的季节,大自然以其独特的方式展现着其磅礴与壮美,然而,这也往往伴随着一系列的自然灾害,其中,山区裸露导致发生的山体滑坡现象尤为引人关注。这不仅直接关系到土壤侵蚀、水土流失等生态问题,还深…

SQL for JSON

SQL for JSON MySQL 提供了强大的 JSON 支持,使开发者能够高效地存储和查询结构化数据。下面,我们通过实例来介绍 MySQL 的 JSON 基本用法,包括如何存储、查询、更新和操作 JSON 数据。 1. 创建一个带有 JSON 列的表 我们可以将 JSON 数据类…

第六届机器人、智能控制与人工智能国际(RICAI 2024)

会议信息 会议时间与地点:2024年12月6-8日,中国南京 会议官网:www.ic-ricai.org (点击了解大会参会等详细内容) 会议简介 第六届机器人、智能控制与人工智能国际学术会议(RICAI 2024)将于20…