vue3组合式API-reactive()和ref()函数的使用

本文介绍了Vue中的reactive()函数和ref()函数,分别用于处理对象和简单类型数据,使其响应式。reactive只适用于对象,而ref则支持更多类型的数据,但修改响应式值时需通过.value属性。
摘要由CSDN通过智能技术生成


前言

reactive和ref函数的用法


一、reactive()函数

作用:接受对象类型数据的参数传入并返回一个响应式的对象

1、使用步骤

(1)从vue包中导入reactive函数

(2)在 <script setup> 中执行reactive函数并传入类型为对象的初始值,并使用变量接收返回值

代码如下(示例):

<script setup>  
//1、导入函数
import{reactive}from 'vue'
//2、执行函数 传入一个对象类型的参数 变量接收
const state = reactive({        //把这里的reactive去掉,state变成普通对象,count值不会被更新
    count:0
})
const setupCount=()=>{
    state.count++
}
</script>
<template>
<div>
    <button @click="setupCount">{{ state.count }}</button>
</div>
</template>

在上面代码中,reactive的使用,使得state变成响应式对象,并初始化了一个属性count,初始值为0。定义名为setupCount的函数,当按钮被点击时,会将state.count的值加1。 然后写一个按钮绑定一个点击事件触发setupCount函数让count做自增运算,可以看到鼠标每点击一下,count值就会自增1,从而实现了一个简单的计数器

二、ref()函数

作用:接收简单类型或者对象类型的数据传入并返回一个响应式的对象

1、使用步骤

(1)从vue包中导入ref函数

(2)在 <script setup> 中执行ref函数并传入初始值,并使用变量接收返回值

代码如下(示例):

<script setup>
//1、导入ref函数
import {ref} from 'vue'

//2、执行函数 传入参数(简单类型、对象类型) 变量接收
const count = ref(0)   //Number类型count初始值为0,ref使之成为响应式对象
const setupCount = () =>{
    //脚本区域修改ref产生的响应式对象数据必须通过.value属性来更改值
    count.value++
}
</script>
<template>
<div>
    <button @click="setupCount">{{ count }}</button>
</div>
</template>

ref与reactive的语法是差不多的,需要注意的是ref不仅能对普通对象进行处理,也可以接收简单类型的数据,比如上面代码中的Number类型数据;ref在修改数据时需要通过.value属性来更改值


总结

  • reactive和ref都能将传入的数据转换为响应式的对象;
  • reactive不能处理简单类型的数据,只能传入对象;
  • ref支持接收简单类型和对象类型的数据,但必须通过.value来访问修改数据。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值