本文介绍: 注意 ref函数仅能监听基本类型(number, string等)的变化,不能监听复杂类型的变化(比如对象、数组)在setup函数中,可以使用ref函数,用于创建一个响应式数据,当数据发生改变时,Vue会自动更新。

1.ref

在setup函数中,可以使用ref函数,用于创建一个响应式数据,当数据发生改变时,Vue会自动更新

<template>
  <div>
    <div>{{  sum }}</div>
        <div>
        <el-button @click="addClick">+1</el-button>
        </div>
  </div>
</template>


<script setup lang="ts">
import { ref } from 'vue'
const sum = ref<number>(0)
const addClick = ()=> {
//注意 调用ref的值时一定要加'.value'不然会报错 
  sum.value += 1
}
</script>

<style lang="scss" scoped>

</style>

注意 ref函数仅能监听基本类型(number, string等)的变化,不能监听复杂类型的变化(比如对象、数组)

2.reactive

reactive的用法与ref的用法相似,也是将数据变成响应式数据
reactive适用于复杂数据类型,比如对象和数组

<template>
  <div>
   {{  form.num }}
        <div>
        <el-button @click="addClick">+1</el-button>
        </div>
  </div>
</template>


<script setup lang="ts">
import { reactive } from 'vue'
interface RuleForm {
  num: number
}
const form = reactive<RuleForm>(
  {
    num: 0
  }
)
const addClick = ()=> {
  form.num += 1
}


</script>

<style lang="scss" scoped>

</style>

​​​​

待完善。。。。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注