一些可能被忽视的 Vue3 API 附带案例

Vue3 是 Vue.js 的最新版本,它引入了许多新的 API 和改进。以下是一些可能被忽视的 Vue3 API:

reactive:这是 Vue3 中用于创建响应式对象的函数。与 Vue2 中的 data 不同,reactive 返回的对象是响应式的,这意味着当对象的属性发生变化时,视图会自动更新。

复制代码
import { reactive } from 'vue'
const state = reactive({ count: 0 })

ref:这是 Vue3 中用于创建基本类型的响应式引用的函数。与 reactive 类似,ref 返回的对象也是响应式的。

复制代码
import { ref } from 'vue'
const count = ref(0)

computed:这是 Vue3 中用于创建计算属性的函数。计算属性是基于它们的依赖关系进行缓存的,只有在它们的依赖关系发生变化时才会重新计算。

复制代码
import { computed } from 'vue'
const count = ref(0)
const doubleCount = computed(() => count.value * 2)

watchEffect:这是 Vue3 中用于在组件内部监听响应式对象或数组变化的函数。与 watch 不同,watchEffect 会在组件初始化时立即执行回调函数。

复制代码
import { watchEffect } from 'vue'
watchEffect(() => {
  console.log(count.value) // count.value 的变化会被自动监听并执行回调函数
})

toRefs:这是 Vue3 中用于将响应式对象转换为普通对象和其对应的引用的函数。这在需要将响应式对象传递给非响应式上下文时非常有用。

复制代码
import { toRefs } from 'vue'
const state = reactive({ count: 0 })
const { count, ...otherState } = toRefs(state)

customRef:这是 Vue3 中用于创建自定义引用的函数。自定义引用允许你控制引用的行为,例如实现防抖或节流功能。

复制代码
import { customRef, onMounted } from 'vue'
const count = customRef(0)
onMounted(() => {
  console.log(count.value) // count.value 的变化会被自动监听并执行回调函数
})
相关推荐
计算机毕设定制辅导-无忧学长6 小时前
《基于Vue的流浪动物救助中心管理系统的设计与实现》
java·vue.js·spring boot·流浪动物救助中心管理系统
flash俊杰6 小时前
SQLite + sqlite-vec:100 篇文档内的私域知识库怎么做
前端
Hilaku7 小时前
为什么死磕 1px 的团队,用户体验反而更差?
前端·javascript·程序员
雪芽蓝域zzs7 小时前
第25章:地图下钻交互(点击省份,切换到对应省份城市地图)
vue.js·echars
lichenyang4537 小时前
鸿蒙元服务跳转 H5 太慢?从 Web 内核预热、网络预连接到骨架屏的完整优化方案
前端
aa小小7 小时前
大屏的数据应该怎么做“实时更新“?大屏页面如果一直开着不关(比如挂了几天几夜),你觉得可能会出现什么问题,需要怎么预防?
前端·数据可视化
陈拉斯7 小时前
给公司年会写了个大屏抽奖系统:动画在前端跑,凭什么说结果没被改?
javascript
daols887 小时前
vue 甘特图组件 vxe-gantt 自动计算工期显示关键路径
vue.js·vxe-gantt
aa小小7 小时前
Proxy 响应式原理
前端·proxy