vue3随笔记录

主要记录vue3使用过程的一些细节点

    • [1.toRefs 响应式解构](#1.toRefs 响应式解构)
    • [2.provide + inject异步传递爷孙组件数据](#2.provide + inject异步传递爷孙组件数据)
    • 3.defineExpose暴露子组件方法

1.toRefs 响应式解构

当你在组件中接收 props 的时候,如果只是简单的解构的话,是没有响应式的

所以可以使用 toRefs 来进行解构,这样解构出来的每一个属性都是一个 Ref

clike 复制代码
const {title, count} = toRefs(props)

2.provide + inject异步传递爷孙组件数据

使用链接

当你在封装一些比较复杂的组件时,涉及到的组件层数会比较多 的时候,使用 props 进行数据传递会比较麻烦,所以可以使用 provide + inject 来进行数据传递共享

3.defineExpose暴露子组件方法

vue3父子组价里,父组件使用子组件的方法,需要子组件使用defineExpose将对应方法暴露出来

clike 复制代码
// son.vue
<script>
	defineExpose({
	  sonFun1,
	  sonFun2,
	})
</script>

// far.vue
<script>
  	let sonRef = ref(null)
	sonRef.value?.sonFun1()
</script>
相关推荐
布兰妮甜2 分钟前
单例模式在前端(JavaScript)中的实现与应用
前端·javascript·单例模式
weixin_437398213 分钟前
转Go学习笔记
linux·服务器·开发语言·后端·架构·golang
Mintopia3 分钟前
Three.js 加载模型文件:从二进制到像素的奇幻漂流
前端·javascript·three.js
StrongerIrene12 分钟前
rs build 的process.env的值undefined解决方案
开发语言·javascript·ecmascript
前端小巷子22 分钟前
跨域问题解决方案:JSONP
前端·javascript·面试
风逸hhh24 分钟前
python打卡day58@浙大疏锦行
开发语言·python
Q_9709563936 分钟前
java+vue+SpringBoo足球社区管理系统(程序+数据库+报告+部署教程+答辩指导)
java·开发语言·数据库
为了更好的明天而战1 小时前
Java 中的 ArrayList 和 LinkedList 区别详解(源码级理解)
java·开发语言
just小千1 小时前
重学React(二):添加交互
javascript·react.js·交互
JosieBook1 小时前
【Java编程动手学】Java中的数组与集合
java·开发语言·python