ref 创建基本类型的响应式数据
作用
定义响应式变量, 通常用于定义基本类型数据的响应式变量
ref
也可以定义对象类型数据的响应式变量, 下文会讲解
语法
- 代码示例
vue
<template>
<div class="person">
<h2>姓名: {{ name }}</h2>
<button @click="changeName">修改姓名</button>
</div>
</template>
<script lang="ts" name="Person" setup>
import { ref } from 'vue'
// name 是一个 RefImpl 的实例对象, 简称 ref 对象, name 的 value 属性是响应式的
let name = ref('张三')
function changeName(){
// 操作 ref 对象时候需要 .value
name.value = 'Zhang San'
console.log(name)
/*
注意: name 不是响应式的, name.value 是响应式的
所以如下代码并不会引起页面的更新
*/
// name = ref('zhang-san')
}
</script>
注意
- 操作数据需要:
xxx.value
, 但模板中不需要.value
, 直接使用即可 - 对于
let name = ref('张三')
来说,name
不是响应式的,name.value
是响应式的
返回值
ref
返回一个RefImpl
的实例对象, 简称ref对象
或ref
, ref
对象的value
属性是响应式的