Vue3学习-day2

组合式API:reactive和ref函数

reactive()

App.vue

复制代码
<script setup>
// reactive: 接收一个对象类型数据,返回一个响应式的对象
// 问题:如果遇到简单类型(不是对象类型)怎么办呢?
import { reactive } from 'vue'
const state = reactive({
  count: 100
})
const setCount = () => {
  state.count++
}
</script>

<template>
  <div>{{ state.count }}</div>
  <button @click="setCount">+1</button>
</template>

ref()

App.vue

复制代码
<script setup>
// 1.reactive: 接收一个对象类型数据,返回一个响应式的对象
//     问题:如果遇到简单类型(不是对象类型)怎么办呢?
// import { reactive } from 'vue'
// const state = reactive({
//   count: 100
// })
// const setCount = () => {
//   state.count++
// }

// 2.ref: 接收简单类型 或 复杂类型(对象类型),返回一个响应式对象
//   本质: 是在原有传入数据的基础上,外层包了一层对象,包成了复杂类型
//   底层: 包成复杂类型之后,再借助 reactive 实现的响应式
//   注意:
//    1. 在script(脚本)中,访问数据,需要通过 .value
//    2. 在template(模板)中,不需要.value(帮我们扒了一层)

//  推荐:以后生命声明数据统一用 ref => 统一编码规范
import { ref } from 'vue'
const count = ref(0)
const setCount = () => {
   count.value++
}
</script>

<template>
  <div>{{ count }}</div>
  <button @click="setCount">+1</button>
</template>

总结

相关推荐
报错小能手1 小时前
深入理解 Linux 物理内存管理
学习·操作系统
美狐美颜sdk2 小时前
从人脸关键点到动态贴图:面具特效在美颜SDK中的实现原理
前端·图像处理·人工智能·直播美颜sdk·美颜api
我命由我123452 小时前
React Router 6 - 编程式路由导航、useInRouterContext、useNavigationType
前端·javascript·react.js·前端框架·html·ecmascript·js
zx_zx_1232 小时前
哈希表的学习
学习·哈希算法·散列表
FAFU_kyp2 小时前
Kimi Coding Plan API 集成问题与解决方案
学习
威联通网络存储2 小时前
告别掉帧与素材损毁:威联通 QuTS hero 如何重塑影视后期协同工作流
前端·网络·人工智能·python
anOnion2 小时前
构建无障碍组件之Tabs Pattern
前端·html·交互设计
一招定胜负3 小时前
课堂教学质量综合评分系统
java·linux·前端
2301_780669863 小时前
前端logo替换开发
前端·vue.js
启山智软3 小时前
【启山智软智能商城系统技术架构剖析】
java·前端·架构