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

具名插槽

具有名字的插槽

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

作用域插槽

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

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

作用域

子组件 结构由父亲决定


相关推荐
C_心欲无痕4 小时前
前端实现水印的两种方式:SVG 与 Canvas
前端·安全·水印
Elias不吃糖6 小时前
Java Lambda 表达式
java·开发语言·学习
梨子串桃子_6 小时前
推荐系统学习笔记 | PyTorch学习笔记
pytorch·笔记·python·学习·算法
尾善爱看海7 小时前
不常用的浏览器 API —— Web Speech
前端
jjjxxxhhh1237 小时前
spdlog介绍使用
学习
美酒没故事°7 小时前
vue3拖拽+粘贴的综合上传器
前端·javascript·typescript
曾浩轩8 小时前
图灵完备Turing Complete 3
学习
天天睡大觉8 小时前
Python学习11
网络·python·学习
laplace01238 小时前
# 第六章 agent框架开发实践 - 学习笔记
人工智能·笔记·学习·语言模型·agent
jingling5558 小时前
css进阶 | 实现罐子中的水流搅拌效果
前端·css