Vue3 学习 5

组件通信

【props】

概述:props是使用频率最高的一种通信方式,通常与父<->子

  • 若父传子:属性值是非函数
  • 若子传父:属性值是函数

自定义事件

子传父

mitt

收数据的:提前绑定好事件(提前订阅消息)

提供数据:在合适的时候触发事件(发布消息)

弟弟在收数据(绑),哥哥在提供数据(触发时间)

组件通信v-model

$event到底是啥,啥时候能.target

  • 对于原生事件,$event就是是事件对象
  • 对于自定义事件,$event就是触发事件,所传递的数据==>不能.target

v-model既能父传子也能子传父

value是可以改的,例如改成abc,可以写多个v-model,传几个v-model就收几个defineProps,在下面对应写几个事件

【$attrs】

1.概述:$attrs用于现实当前组件的父组件 ,向当前组件的子组件 通信(祖->孙)

2.具体说明: $attrs是一个对象,包含所有父组件传入的标签属性

父亲的数据:

儿子将父亲的数据传给孙子:

孙子接收数据:

refs、 parent】

1.概述:

  • $refs用于:父->子
  • parent用于:子-\>父 2.原理如下: refs:值为对象,包含所有被ref属性标识的DOM元素或组件实例
    $parent:值为对象,当前组件的父组件实例对象
    父亲

    儿子1:

    儿子2:

【provide、inject】

provide(名字,值)

父亲提供:

孙子获取inject:

插槽

默认插槽


父元素使用双标签,子元素使用插槽slot

具名插槽

具有名字的插槽

具名插槽是默认插槽的一种。

作用域插槽

数据在子那边,但根据数据生成的结构,却由父亲决定

压岁钱在孩子那,但根据压岁钱买的东西,却由父亲决定

作用域

子组件 结构由父亲决定


相关推荐
掘金安东尼1 小时前
纯 CSS 实现弹性文字效果
前端·css
牛奶2 小时前
Vue 基础理论 & API 使用
前端·vue.js·面试
牛奶2 小时前
Vue 底层原理 & 新特性
前端·vue.js·面试
anOnion2 小时前
构建无障碍组件之Radio group pattern
前端·html·交互设计
pe7er2 小时前
状态提升:前端开发中的状态管理的设计思想
前端·vue.js·react.js
SoaringHeart3 小时前
Flutter调试组件:打印任意组件尺寸位置信息 NRenderBox
前端·flutter
晚风予星4 小时前
Ant Design Token Lens 迎来了全面升级!支持在 .tsx 或 .ts 文件中直接使用 Design Token
前端·react.js·visual studio code
sunny_4 小时前
⚡️ vite-plugin-oxc:从 Babel 到 Oxc,我为 Vite 写了一个高性能编译插件
前端·webpack·架构
GIS之路4 小时前
ArcPy 开发环境搭建
前端
林小帅6 小时前
【笔记】OpenClaw 架构浅析
前端·agent