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>

总结

相关推荐
sleP4o10 分钟前
Git的学习和常见问题
git·学习·elasticsearch
LY80922 分钟前
前端开发者的福音:用JavaScript实现Live2D虚拟人口型同步
前端·虚拟现实
林涧泣22 分钟前
【Uniapp-Vue3】uniapp创建组件
前端·javascript·uni-app
Sinyu101228 分钟前
Flutter 动画实战:绘制波浪动效详解
android·前端·flutter
pikachu冲冲冲31 分钟前
vue权限管理(动态路由)
前端·vue.js
丁总学Java34 分钟前
[Vue warn]: Unknown custom element:
javascript·vue.js·ecmascript
一条不想当淡水鱼的咸鱼39 分钟前
taro转H5端踩坑
前端·taro
傻小胖1 小时前
React Context用法总结
前端·react.js·前端框架
xsh801442422 小时前
Java Spring Boot监听事件和处理事件
java·前端·数据库
JINGWHALE12 小时前
设计模式 行为型 状态模式(State Pattern)与 常见技术框架应用 解析
前端·人工智能·后端·设计模式·性能优化·系统架构·状态模式