目录
1、ref的基本使用
2、reactive的基本使用
3、ref操作dom
4、ref与reactive的异同
1、ref的基本使用
ref创建数据可以是基本类型也可以是引用类型
ref函数创建响应式数据,返回值是一个对象
模版中使用ref数据,省略.value,js代码中不能省略
获取ref创建数据的值要加上.value
<script setup>
// ref函数创建响应式数据,返回值是一个对象
// 模版中使用ref数据,省略.value,js代码中不能省略
import { ref } from 'vue'
const obj =ref({
name: '北京',
desc: '政治文化中心'
})
// 修改城市的方法
const change = () => {
obj.value.name = '上海'
}
</script>
<template>
<div>Hello Vue3</div>
<p>城市 {{ obj.name }}</p>
<button @click="change">修改城市</button>
</template>
<style scoped></style>
2、reactive的基本使用
reactive创建响应式
reactive函数创建响应式数据,只支持引用数据类型
使用reactive响应式数据的时候,不需要.value
<script setup>
// reactive函数创建响应式数据,只支持引用数据类型
// 使用reactive响应式数据的时候,不需要.value
import { reactive } from 'vue'
const user = reactive({
name: 'admin',
pwd: '123456'
})
const changeUserName = () => {
user.name = 'admin666'
}
</script>
<template>
<div>Hello Vue3</div>
<p>姓名 {{ user.name }}</p>
<button @click="changeUserName">修改姓名</button>
</template>
<style scoped></style>
3、ref操作dom
1、创建ref对象,将该对象作为ref的值
2、想获取谁,就再谁的标签上添加ref,其ref=‘ref对象’
<script setup >
import {ref} from 'vue'
// 创建ref对象
const eleref=ref()
const changeBackgroundColor=()=>{
eleref.value.style.backgroundColor='pink'
}
</script>
<template>
<div>hello,world</div>
<!-- ref='ref对象' -->
<p ref="eleref">pppp</p>
<button @click="changeBackgroundColor"> 改变背景色</button>
</template>
<style scoped>
</style>
4、ref与reactive的异同
-
相同点 : 都可以创建响应式数据
-
不同点 : reactive只支持引用数据类型,ref支持基本和引用数据类型
-
ref通过.value获取数据,reactive不需要.value文章来源:https://www.toymoban.com/news/detail-819644.html
-
ref创建响应式引用数据类型低层依赖reactive文章来源地址https://www.toymoban.com/news/detail-819644.html
到了这里,关于Vue3的ref和reactive的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!