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>
相关推荐
工业甲酰苯胺3 小时前
TypeScript枚举类型应用:前后端状态码映射的最简方案
javascript·typescript·状态模式
倔强青铜34 小时前
苦练Python第18天:Python异常处理锦囊
开发语言·python
u_topian4 小时前
【个人笔记】Qt使用的一些易错问题
开发语言·笔记·qt
珊瑚里的鱼5 小时前
LeetCode 692题解 | 前K个高频单词
开发语言·c++·算法·leetcode·职场和发展·学习方法
AI+程序员在路上5 小时前
QTextCodec的功能及其在Qt5及Qt6中的演变
开发语言·c++·qt
xingshanchang5 小时前
Matlab的命令行窗口内容的记录-利用diary记录日志/保存命令窗口输出
开发语言·matlab
Risehuxyc5 小时前
C++卸载了会影响电脑正常使用吗?解析C++运行库的作用与卸载后果
开发语言·c++
AI视觉网奇5 小时前
git 访问 github
运维·开发语言·docker
不知道叫什么呀5 小时前
【C】vector和array的区别
java·c语言·开发语言·aigc
liulilittle5 小时前
.NET ExpandoObject 技术原理解析
开发语言·网络·windows·c#·.net·net·动态编程