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>
相关推荐
hj5914_前端新手3 小时前
javascript基础- 函数中 this 指向、call、apply、bind
前端·javascript
Hilaku3 小时前
都2025年了,我们还有必要为了兼容性,去写那么多polyfill吗?
前端·javascript·css
LuckySusu4 小时前
【js篇】JavaScript 原型修改 vs 重写:深入理解 constructor的指向问题
前端·javascript
LuckySusu4 小时前
【js篇】如何准确获取对象自身的属性?hasOwnProperty深度解析
前端·javascript
LuckySusu4 小时前
【js篇】深入理解 JavaScript 作用域与作用域链
前端·javascript
LuckySusu4 小时前
【js篇】call() 与 apply()深度对比
前端·javascript
LuckySusu4 小时前
【js篇】addEventListener()方法的参数和使用
前端·javascript
LuckySusu4 小时前
【js篇】深入理解 JavaScript 原型与原型链
前端·javascript
云枫晖4 小时前
手写Promise-构造函数
前端·javascript
naice5 小时前
我对github的图片很不爽了,于是用AI写了一个图片预览插件
前端·javascript·git