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

具名插槽

具有名字的插槽

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

作用域插槽

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

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

作用域

子组件 结构由父亲决定


相关推荐
iconball2 小时前
个人用云计算学习笔记 --32 Docker和docker swarm
运维·笔记·学习·docker·容器·云计算
_Kayo_2 小时前
vue3 状态管理器 pinia 用法笔记1
前端·javascript·vue.js
How_doyou_do2 小时前
工程级前端智能体FrontAgent
前端
秋深枫叶红2 小时前
嵌入式第四十篇——网络编程
linux·网络·学习
2501_944446002 小时前
Flutter&OpenHarmony日期时间选择器实现
前端·javascript·flutter
二狗哈2 小时前
Cesium快速入门34:3dTile高级样式设置
前端·javascript·算法·3d·webgl·cesium·地图可视化
JS_GGbond2 小时前
前端实战:让表格Header优雅吸顶的魔法
前端
AlanHou2 小时前
Three.js:Web 最重要的 3D 渲染引擎的技术综述
前端·webgl·three.js
JS_GGbond2 小时前
前端必备技能:彻底搞懂JavaScript深浅拷贝,告别数据共享的坑!
前端