新星计划打卡学习:VUE3组合式API

目录

1、vue3组件页面的构成

2、setup选项

3、reactive

4、ref

最后


1、vue3组件页面的构成

从上到下依次是 逻辑、结构、样式

2、setup选项

经过语法糖的封装更简单的使用组合式api

TypeScript 复制代码
<script setup> 
// 经过语法糖的封装更简单的使用组合式api
const message = 'this is a message!';
const logmessage = () => {
  alert("666")
}
</script>

3、reactive

reactive:接受对象类型的数据,返回一个响应式的对象

TypeScript 复制代码
<script setup> 
//reactive:接受对象类型的数据,返回一个响应式的对象
import {reactive} from 'vue'
const state = reactive({
  count: 100
})

const setCount = () => {
  state.count++;
}
</script>

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

<style scoped>
</style>

4、ref

ref:可接受普通数据类型和对象数据类型,返回一个响应式的对象

TypeScript 复制代码
<script setup> 
//ref:可接受普通数据类型和对象数据类型,返回一个响应式的对象
import {ref} from 'vue'
const state = ref(0)

//ref封装了reactive,返回的还是一个对象,脚本中取值的时候需要加.value
const setCount = () => {
  state.value++;
  console.log(state);
  console.log(state.value);
}
</script>

<template>
<!-- 模板中取值的时候可以直接写变量 -->
<div>{{state}}</div>
<div></div>
<button @click="setCount">按钮</button>
</template>

<style scoped>
</style>

注意:在工作中更推荐使用ref,ref在脚本中使用时需要加.value,在模板中使用时可以直接拿来用,并且它既可以接收对象类型又可以接受普通数据类型,因此使用了ref,相当于统一了编程规范。

图解说明:

打印出来的ref是一个对象,对reactive进行了封装,它的值放在value里面,需要通过.value的方式拿出里面的值

最后

以上这篇文章就是我今天学习的全部内容了,通过学习,我简单了解了 Vue3 响应式的内容,通过自己编写实际案例也学习了 reactiveref 的用法。

相关推荐
北辰alk13 小时前
为什么 Vue 中的 data 必须是一个函数?深度解析与实战指南
vue.js
北辰alk13 小时前
Vue 的 <template> 标签:不仅仅是包裹容器
vue.js
Nan_Shu_61413 小时前
学习: Threejs (2)
前端·javascript·学习
北辰alk13 小时前
为什么不建议在 Vue 中同时使用 v-if 和 v-for?深度解析与最佳实践
vue.js
北辰alk13 小时前
Vue 模板中保留 HTML 注释的完整指南
vue.js
G_G#13 小时前
纯前端js插件实现同一浏览器控制只允许打开一个标签,处理session变更问题
前端·javascript·浏览器标签页通信·只允许一个标签页
北辰alk13 小时前
Vue 组件 name 选项:不只是个名字那么简单
vue.js
北辰alk13 小时前
Vue 计算属性与 data 属性同名:优雅的冲突还是潜在的陷阱?
vue.js
北辰alk13 小时前
Vue 的 v-show 和 v-if:性能、场景与实战选择
vue.js
@大迁世界13 小时前
TypeScript 的本质并非类型,而是信任
开发语言·前端·javascript·typescript·ecmascript