组件通信-(父子组件通信)

目录

一、什么是组件通信

二、组件关系的分类

三、组件通信解决方案

四、父传子

五、子传父


一、什么是组件通信

组件通信,就是指组件与组件之间的数据传递。组件的数据是独立的,无法直接访问其他组件的数据。如果想使用其他组件的数据,就需要进行组件通信。

不同的组件关系对应的组件通信方案应该是不一样的。

二、组件关系的分类

  1. 父子关系
  2. 非父子关系

如下图:

三、组件通信解决方案

父子通信流程图:

四、父传子

父组件通过props将数据传递给子组件。

父组件直接包裹了子组件Son。现在的需求是:父组件有一个数据myTitle,子组件需要对该数据进行展示,默认情况下不能直接使用,需要通过props的方式将数据传递给子组件。

props就是给组件标签新增的一个个自定义属性。比如div标签的title属性、img标签的src属性。如下图:

其实组件标签上也可以加一些属性,在加这些属性的时候,就是在为当前组件添加数据,也就是在给当前组件传值。而子组件内部通过props接收,然后子组件就可以使用该数据了。

代码分析

在<Son :title="myTitle"></Son>这段代码中,为什么要使用:title?因为:title其实是v-bind:title的简写,它的作用是为标签设置动态的属性,title的属性值是通过该组件的data()函数的myTitle属性得到的,而在实际的开发中,myTitle属性的值其实是会动态变化,如果直接使用title=".....",则title的属性值是写死了的;如果使用:title=".....",省略部分是可以填写data()函数里面的属性名的,所以data()函数里面的属性如果发生变化,则title属性也会动态变化。

<Son :title="myTitle"></Son>这一步已经成功为子组件传递了数据。然后子组件内部可以通过props来进行接收。如图:

[ ]是数组的意思,代表可以接收多个传值,而里面写的属性名需要与父组件传值时的属性名保持一致。如<Son :title="myTitle"></Son>,父组件传值时使用的属性名为title,则子组件通过props:['title']来得到父组件传递的数据。

子组件使用从父组件传递的值:

五、子传父

子组件利用$emit通知父组件,进行修改更新。

子组件中准备一个按钮<button @click="handleClick">修改title</button>,点击按钮后,触发handleClick点击事件,在该事件中,再通过$emit触发事件,给父组件发送消息通知,一旦发送了消息通知,父组件需要对子组件所发送的消息进行监听,比如子组件:this.$emit('changeTitle','传智教育'),第一个参数changeTitle就是$emit触发的事件名,则父组件需要对changeTitle事件进行监听,即:<Son :title="myTitle" @changeTitle=''changeFn"></Son>,监听的目的就是收到子组件传递过来的消息,并且可以提供对应的处理函数changeFn,在该处理函数的形参中就可以拿到从子组件传递过来的消息,如下图:

这里面的newTitle就是子组件传递过来的消息:"传智教育"。然后就可以使用newTitle来更新myTitle的数据了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/832787.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

cron表达式xxljob

Cron格式说明 | | | | | | | | | | | | | — 年 (range: 1970-2099) | | | | | ------- 周 (range: 1&#xff5e;7&#xff09; | | | | ----------- 月(range: 1&#xff5e;12) | | | --------------- 日(range: 1&#xff5e;31) | | ------------------- 时(range: 0…

软件FMEA的时机:架构设计、详设阶段——FMEA软件

免费试用FMEA软件-免费版-SunFMEA 软件FMEA&#xff08;故障模式与影响分析&#xff09;是一种预防性的质量工具&#xff0c;旨在识别软件中可能存在的故障模式&#xff0c;并分析其对系统性能、安全性和可靠性的影响。在软件开发生命周期中&#xff0c;选择适当的时机进行FME…

工业光源环形系列一高亮条形光源特点

产品特点 ◆可以根据检测需求随意调整照射角度&#xff1b; ◆可以根据检测需求选择光源颜色&#xff1b; ◆多个条形光源可以自由组合&#xff1b; ◆使用大功率贴片灯珠&#xff0c;亮度高&#xff1b; ◆灯珠上面增加透镜&#xff0c;照射距离更远

【Unity动画系统】动画层级(Animation Layer)讲解与使用

如何使用Unity的Animation Layer和Avater Mask把多个动画组合使用 想让玩家持枪行走&#xff0c;但是手里只有行走和持枪站立的动作。 Unity中最方便的解决办法就是使用动画层级animation layer以及替身蒙版avatar mask。 创建一个动画层级 Weight表示权重&#xff0c;0的话则…

使用 OpenNJet 分分钟完成打地鼠小游戏部署

文章目录 OpenNJet应用引擎什么是应用引擎什么是OpenNJet独特优势技术架构 OpenNJet安装RPM安装 部署打地鼠小游戏配置OpenNJet部署打地鼠小游戏启动 NJet访问打地鼠小游戏 总结 今天阿Q打算使用OpenNJet应用引擎来部署一下我们的打地鼠小游戏。在开始部署之前&#xff0c;我们…

教你快速记录每日待办事项,并提醒自己按时完成不忘记

在忙碌的日常生活中&#xff0c;我们经常会面临待办事项繁杂、时间紧迫的困扰。为了更高效地管理时间和任务&#xff0c;我们需要一个能够快速记录并准时提醒我们完成待办事项的工具。此时&#xff0c;敬业签这类的待办软件就成为了很多人的首选工具。 敬业签是一款功能强大的…

Raft共识算法图二解释

下面是有关Raft协议中不同术语和概念的翻译及解释&#xff1a; 术语和概念&#xff1a; 任期号&#xff08;term number&#xff09;&#xff1a;用来区分不同的leader。前一个日志槽位的信息&#xff08;prelogIndex&#xff09;&#xff1a;这是前一个日志条目的索引&#…

5000亿参数来了:微软将推出 MAI-1 模型硬刚谷歌和OpenAI|TodayAI

美国的科技巨头微软公司&#xff0c;正在积极扩展其人工智能&#xff08;AI&#xff09;技术的领域。最新消息显示&#xff0c;微软将推出一款名为MAI-1的全新AI模型&#xff0c;其规模巨大&#xff0c;预计将拥有5000亿个可调参数。这一开发工作由Inflection AI的CEO穆斯塔法苏…

深度剖析Comate智能产品:科技巧思,实用至上

文章目录 Comate智能编码助手介绍Comate应用场景Comate语言与IDE支持 Comate安装步骤Comate智能编码使用体验代码推荐智能推荐生成单测注释解释注释生成智能问答 Comate实战演练总结 Comate智能编码助手介绍 市面上现在有很多智能代码助手&#xff0c;当时互联网头部大厂百度也…

损失函数详解

1.损失函数 是一种衡量模型与数据吻合程度的算法。损失函数测量实际测量值和预测值之间差距的一种方式。损失函数的值越高预测就越错误&#xff0c;损失函数值越低则预测越接近真实值。对每个单独的观测(数据点)计算损失函数。将所有损失函数&#xff08;loss function&#xf…

文件夹重命名技巧:克服文件夹名混乱不规律的难题,实现高效管理

在数字时代&#xff0c;我们每天都在与无数的文件夹打交道。这些文件夹中可能存储着文档、图片、视频等各种类型的文件。然而&#xff0c;随着文件夹数量的增加&#xff0c;如何有效地管理和命名这些文件夹成为了一个挑战。混乱和不规律的文件夹名不仅降低了工作效率&#xff0…

安卓view坐标系

目录 一、getX、 getRawX、 getTranslationX 等的图形表示二、 getX、 getRawX、 getTranslationX 意义的文字描述 一、getX、 getRawX、 getTranslationX 等的图形表示 坐标系&#xff1a; 视图坐标系&#xff1a; 二、 getX、 getRawX、 getTranslationX 意义的文字描述 …

TCP UDP

传输层 端口号 tcp udp 网络层 IP地址 IP TCP&#xff0c;UDP 1&#xff0c;TCP是面向链接的协议&#xff0c;而UDP是无连接的协议; 2&#xff0c;TCP协议的传输是可靠的&#xff0c;而UDP协议的传输“尽力而为” 3&#xff0c;TCP可以实现流控&#xff0c;但UDP不行;…

vue打包报错:CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

前言&#xff1a; vue项目&#xff0c;打包报错&#xff1a;CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory 报错现象&#xff1a; 报错原因&#xff1a; 这个错误是由Node.js在尝试分配内存时因为系统的可用内存不足而发生的。"JavaScript heap…

Discourse 清理存储空间的方法

Discourse 使用一段时间以后会发现硬盘空间占用非常多。 主要是因为 Docker Image 的问题&#xff0c;如果升级次数越多&#xff0c;空间占用越多。 运行下面的命令&#xff1a; ./launcher cleanup 能够帮助你清理 Discourse 占用的空间。 如下面代码所示&#xff1a; […

微信/支付宝支付服务搭建,一次性搞定!

微信支付 付款码支付 付款码支付是指用户展示微信钱包内的“付款码”给商户系统扫描后直接完成支付&#xff0c;适用于线下场所面对面收银的场景&#xff0c;例如商超、便利店、餐饮、医院、学校、电影院和旅游景区等具有明确经营地址的实体场所JSAPI支付 JSAPI支付是指商户通过…

2024年第七届可再生能源与环境工程国际会议(REEE 2024)即将召开!

2024年第七届可再生能源与环境工程国际会议&#xff08;REEE 2024&#xff09;将于2024 年8月28-30日在法国南特举行。共绘绿色未来&#xff0c;全球同频共振&#xff01;REEE 2024将汇聚全球可再生能源与环境工程领域的专家学者和业界精英&#xff0c;共同探讨行业发展的前沿技…

华南理工大胆突破,全国首个软物质科学与工程本科专业诞生!

不久前&#xff0c;教育部公布了2023年普通高等学校本科专业备案和审批结果&#xff0c;一个新名词吸引了我——软物质科学与工程。这是今年新增的24种新专业之一&#xff0c;而华南理工大学成为国内首个申请设置该专业的高校。这让我产生了强烈的好奇心&#xff1a;软物质是什…

【OpenVINO™】在 C# 中使用OpenVINO™ 部署 YOLO-World 模型实现实时开放词汇对象检测

YOLO-World是一个融合了实时目标检测与增强现实&#xff08;AR&#xff09;技术的创新平台&#xff0c;旨在将现实世界与数字世界无缝对接。该平台以YOLO&#xff08;You Only Look Once&#xff09;算法为核心&#xff0c;实现了对视频中物体的快速准确识别&#xff0c;并通过…

助贷客户管理系统:助力助贷公司轻松实现30%增长目标!

为了解决传统助贷公司在业务过程中遇到的痛点&#xff0c;盛鑫优创科技特别设计了一款定制化的解决方案——"鑫鹿助贷客户管理系统"&#xff0c;以满足助贷行业的独特需求&#xff1a; 传统助贷公司的老板们在做业务的的过程中都有这些痛点&#xff1a; 1、没有一个…