【Vue】组件通信

文章目录

  • 一、组件之间如何通信
  • 二、组件关系分类
  • 三、通信解决方案
  • 四、父子通信流程
  • 五、父向子通信代码示例
  • 六、子向父通信代码示例

组件通信,就是指组件与组件之间的数据传递

  • 组件的数据是独立的,无法直接访问其他组件的数据。
  • 想使用其他组件的数据,就需要组件通信

一、组件之间如何通信

68230890309

思考:

  1. 组件之间有哪些关系?
  2. 对应的组件通信方案有哪几类?

二、组件关系分类

  1. 父子关系 (A与B、A与C)
  2. 非父子关系 (B与C)
68231807380

三、通信解决方案

68231811109

四、父子通信流程

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

    ① 父中给子添加自定义属性传值

    ② 子props 接收

    ③ 子组件使用

    props用大白话将就是组件标签身上新增的一个一个自定义属性

  2. 子组件利用 $emit 通知父组件修改更新

    ① 子$emit 发送消息 ②父中给子添加消息监听 ③ 父中实现处理函数

68231844456

五、父向子通信代码示例

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

父组件App.vue

<template>
  <div class="app" style="border: 3px solid #000; margin: 10px">
    我是APP组件
    <!-- 1.给组件标签,添加属性方式 赋值 -->
    <!-- 如果title前面不加:,就表示写死了 -->
    <Son :title="myTitle"></Son>
  </div>
</template>

<script>
import Son from "./components/Son.vue"
export default {
  name: "App",
  components: {
    Son,
  },
  data() {
    return {
      myTitle: "学前端,就来黑马程序员",
    }
  },
}
</script>

<style>
</style>

子组件Son.vue

<template>
  <div class="son" style="border:3px solid #000;margin:10px">
    <!-- 3.直接使用props的值 -->  
    我是Son组件  {{ title }}
  </div>
</template>

<script>
export default {
  name: 'Son-Child',
  // 2.通过props来接受
  props: ['title']
}
</script>

<style>

</style>

68231871178

父向子传值步骤

  1. 给子组件以添加属性的方式传值
  2. 子组件内部通过props接收
  3. 模板中直接使用 props接收的值

六、子向父通信代码示例

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

68231896563

子向父传值步骤

  1. $emit触发事件,给父组件发送消息通知
  2. 父组件监听$emit触发的事件
  3. 提供处理函数,在函数的形参中获取传过来的参数

Son.vue

<template>
  <div class="son" style="border: 3px solid #000; margin: 10px">
    我是Son组件 {{ title }}
    <button @click="changeFn">修改title</button>
  </div>
</template>

<script>
export default {
  name: 'Son-Child',
  props: ['title'],
  methods: {
    changeFn() {
      // 通过this.$emit() 向父组件发送通知
      // 如果不需要传参的话,第二个参数可以直接不写
      this.$emit('changTitle','传智教育')
    },
  },
}
</script>

<style>
</style>

App.vue

<template>
  <div class="app" style="border: 3px solid #000; margin: 10px">
    我是APP组件
    <!-- 2.父组件对子组件的消息进行监听 -->
    <Son :title="myTitle" @changTitle="handleChange"></Son>
  </div>
</template>

<script>
import Son from './components/Son.vue'
export default {
  name: 'App',
  data() {
    return {
      myTitle: '学前端,就来黑马程序员',
    }
  },
  components: {
    Son,
  },
  methods: {
    // 3.提供处理函数,提供逻辑
    handleChange(newTitle) {
      this.myTitle = newTitle
    },
  },
}
</script>

<style>
</style>

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java集合简略记录

一、集合体系结构 单列集合&#xff1a;Collection 双列集合&#xff1a;Map 二、单列集合 List系列集合&#xff1a;添加的元素是有序、可重复、有索引 有序指的是存和取的顺序是一致的&#xff0c;和之前排序的从小到大是没有任何关系的 Set系列集合&#xff1a;添加的元素是…

28 hive安装-本地模式

1.安装mysql&#xff08;参考文章&#xff1a;centos7.8安装Mysql8.4-CSDN博客&#xff09; 2.将mysql驱动拷贝到/opt/module/hive/lib目录下 &#xff08;直接windows通过finalShell上传&#xff09; 3./opt/module/hive/conf目录下新建hive-site.xml文件&#xff0c;进行配置…

c#与汇川plc通信 使用官网API库

前言 上位机开发中有时会要求与PLC进行通信&#xff0c;汇川官网也有好用的API库方便大家使用。记录一下开发过程。 1.下载资料 汇川官网地址&#xff1a;汇川技术 - 推进工业文明 共创美好生活 打开后选择&#xff1a;服务与支持-》资料下载-》 资料下载 这里可以直接搜索&am…

傅立叶变换矩阵的频谱响应

傅立叶变换矩阵的频谱响应 线性变换可以用矩阵表示&#xff0c;傅立叶变换是一种线性变换&#xff0c;因此也可以使用矩阵表示。具体可以参考&#xff1a;离散傅立叶变换和线性变换的关系&#xff1a;什么是线性空间&#xff1f; 1、傅立叶矩阵 X [ k ] ∑ n 0 N − 1 x [ …

实测有效:Win11一键恢复win10经典右键菜单,让Win11右键默认显示更多设置教程!

Win11一键还原win10右键菜单&#xff1f;win11右键菜单怎么改&#xff1f;怎样让Win11右键默认显示更多选项&#xff1f;今天&#xff0c;我要给你们介绍一款专为Windows 11系统设计的小巧工具&#xff0c;它能让你的右键菜单瞬间回到Win10时代&#xff0c;那种熟悉的感觉&…

Python02:python代码初体验

0、python代码初体验 print(hello,world)看到执行结果输出&#xff0c;则OKK! 1、输出结果取消换行 当print多个执行结果&#xff0c;又希望它们在同一行展示时&#xff1a; print(hello,world, end)print(Hao are, end ) print(you, end?) print(I am fine.) # end参数可…

鸿蒙Ability Kit(程序框架服务)【Ability与ServiceExtensionAbility通信】

Ability与ServiceExtensionAbility通信 介绍 本示例展示通过[IDL的方式]和 [ohos.rpc] 等接口实现了Ability与ServiceExtensionAbility之间的通信。 效果预览 使用说明 1.启动应用后&#xff0c;首页展示城市的天气信息&#xff0c;当前温度每隔5S会刷新一次。 工程目录 …

短链接突然无法打开和域名有关系?短链接使用必读

在使用短链接的过程中&#xff0c;偶尔会遇到短链接无法正常访问的情形&#xff0c;打开之后&#xff0c;要么呈现该网页已然停止访问的提示&#xff0c;要么就是显示无法访问此网站&#xff0c;这究竟是何种缘由导致的呢&#xff1f;而当遇到这些状况时又该如何去妥善解决呢&a…

IC设计企业致力于解决的HPC数据防泄漏,到底该怎么做?

对于半导体IC设计企业来说&#xff0c;芯片设计、验证、仿真使用HPC环境现在已逐渐成为趋势&#xff0c;主要原因在于原来的工作流程存在较多的缺陷&#xff1a; 性能瓶颈&#xff1a;仿真、设计、验证、生产过程中&#xff0c;前端仿真需要小文件高并发低时延的读写和巨量元数…

2024年人文教育与管理科学国际会议(ICHEMS 2024)

2024年人文教育与管理科学国际会议 2024 International Conference on Humanities Education and Management Science 【1】会议简介 2024年人文教育与管理科学国际会议是一场集合了全球人文教育与管理科学领域精英的学术盛会。本次会议旨在搭建一个国际化的学术交流平台&#…

ElementUi el-tree动态加载节点数据 load方法触发机制

需求背景&#xff1a;需要根据点击后获取的数据动态渲染一个 el-tree&#xff0c;同时渲染出来的 el-tree&#xff0c;需要点击节点时才能获取该节点的层数的获取&#xff0c;如图所示&#xff0c;我需要点击“组”节点才能渲染“设备列表”树&#xff0c;同时“设备列表”树的…

企业数据安全管理容易忽视的关键点:云存储权限管控

云存储已经广泛应用于企业用户、教育领域、医疗领域以及政府和公共服务部门。具体应用场景包括文件共享、数据备份、在线课程、教学资源库、电子病历、医学影像、实验室数据、政务数据的集中管理和共享等。 云存储的优势非常明显&#xff1a; 可扩展性&#xff1a;云存储空间可…

Message forwarding mechanism (消息转发机制)

iOS的消息转发机制 iOS的消息转发机制是在消息发送给对象时&#xff0c;找不到对应的实例方法的情况下启动的。消息转发允许对象在运行时处理无法识别的消息&#xff0c;提供了一种动态的、灵活的消息处理方式。 消息转发机制主要分为三个阶段&#xff1a; 动态方法解析快速…

深度神经网络——什么是 CNN(卷积神经网络)?

Facebook和Instagram自动检测图像中的面孔&#xff0c;Google通过上传照片搜索相似图片的功能&#xff0c;这些都是计算机视觉技术的实例&#xff0c;它们背后的核心技术是卷积神经网络&#xff08;CNN&#xff09;。那么&#xff0c;CNN究竟是什么呢&#xff1f;接下来&#x…

通过 .NET COM 互操作设置 System.Drawing.Color

1. 问题背景 在尝试使用 Aspose.Words 库执行 COM 互操作时&#xff0c;遇到了一个关键问题&#xff1a;无法设置颜色。理论上&#xff0c;可以通过向 DocumentBuilder.Font.Color 赋值来设置颜色&#xff0c;但尝试时却出现了 OLE 错误 0x80131509。 以下代码示例演示了这个…

el-tabel名称排序问题

el-tabel排序 最终实现功能如下&#xff1a; 排序限制为&#xff1a; 文件夹>普通文件 数字&#xff08;0->9&#xff09;->大写字母&#xff08;A->Z&#xff09;->小写字母&#xff08;a->z&#xff09;->中文拼音&#xff08;a->z&#xff09; 正序…

8086 汇编笔记(七):数据处理的两个基本问题

一、bx、si、di 和 bp 在使用过程中有几处需要注意的地方&#xff1a; &#xff08;1&#xff09;在 8086CPU 中&#xff0c;只有这4个寄存器可以用在“[....]”中来进行内存单元的寻址。其他寄存器是不可以的&#xff0c;例如“mov bx, [ax]”就是错误的用法。 &#xff08…

C#中字节数组(byte[])末尾继续添加字节的示例

方法一&#xff1a;使用List 使用List可以很容易地在末尾添加字节&#xff0c;然后如果需要&#xff0c;可以将其转换回byte[]。 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Lin…

【机器学习基础】Python编程02:五个实用练习题的解析与总结

Python是一种广泛使用的高级编程语言,它在机器学习领域中的重要性主要体现在以下几个方面: 简洁易学:Python语法简洁清晰,易于学习,使得初学者能够快速上手机器学习项目。 丰富的库支持:Python拥有大量的机器学习库,如scikit-learn、TensorFlow、Keras和PyTorch等,这些…

展厅装修设计对于企业的关重要性

1、定位和主题 定位和主题与企业的品牌形象、产品和服务特点相一致&#xff0c;以展示企业形象和产品特点。 2、空间布局 在空间布局方面&#xff0c;采用分区展示、独立展示、开放式展示等方式&#xff0c;以便客户和观众浏览和参观。同时&#xff0c;合理利用&#xff0c;避免…