博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vue核心技术-18,父子组件通信
阅读量:2222 次
发布时间:2019-05-08

本文共 786 字,大约阅读时间需要 2 分钟。

一,前言

前面介绍了子组件使用props接收来自父组件传递的参数及验证这种传递是父组件->子组件传递数据而父子组件通信还要实现子组件->父组件传递数据组件间的通信按照关系可分为:父子组件通信,兄弟组件通信,跨级组件通信三种

二,子组件向父组件通信

对于父子组件通信中的父组件通过子组件props选项向子组件传参已经介绍过了那么子组件如何向父组件传递数据呢?当子组件向父组件传递数据时,要用到自定义事件

什么是自定义事件:

Vue组件中有一套机制,类似于观察者模式(也被称作订阅发布模式),称为自定义事件

自定义事件的使用:

子组件使用$emit()触发事件,父组件使用$on监听子组件事件父组件也可以直接在子组件的自定义标签上使用v-on监听子组件触发的自定义事件

如图所示:

父子组件通信


三,父子组件通信的方法

有了以上了解,通过下边的Demo演示并说明父子组件通信

父组件数据: {
{ parentMsg }}

初始化显示:

由于parentMsg和childMsg初始值为空,所以子组件初始化msg也为空

父子组件通信-初始化

点击父组件中’向子组件发送数据’按钮:

childMsg值为'来自父组件的数据',通过子组件props选项传入子组件并显示

父子组件通信-向子组件发送数据

点击子组件中’向父组件发送数据’按钮:

触发组件内部handle方法,通过$emit触发子组件传入的Vue实例方法sendMsgToParentsendMsgToParent中改变了parentMsg值为'来自父组件的数据',触发页面更新

父子组件通信-向父组件发送数据


四,结尾

父组件向子组件传参可以使用props选项,这篇主要介绍子组件如何向父组件进行通信父子组件的通信很简单,下面介绍兄弟组件通信和跨级组件通信的实现

维护记录:

20180820:
添加父子组件通信流程图

你可能感兴趣的文章
iOS MapKit导航及地理转码辅助类
查看>>
检测iOS的网络可用性并打开网络设置
查看>>
简单封装FMDB操作sqlite的模板
查看>>
iOS开发中Instruments的用法
查看>>
强引用 软引用 弱引用 虚引用
查看>>
数据类型 java转换
查看>>
"NetworkError: 400 Bad Request - http://172.16.47.117:8088/rhip/**/####t/approval?date=976
查看>>
mybatis 根据 数据库表 自动生成 实体
查看>>
C结构体、C++结构体、C++类的区别
查看>>
进程和线程的概念、区别和联系
查看>>
CMake 入门实战
查看>>
绑定CPU逻辑核心的利器——taskset
查看>>
Linux下perf性能测试火焰图只显示函数地址不显示函数名的问题
查看>>
c结构体、c++结构体和c++类的区别以及错误纠正
查看>>
Linux下查看根目录各文件内存占用情况
查看>>
A星算法详解(个人认为最详细,最通俗易懂的一个版本)
查看>>
利用栈实现DFS
查看>>
(PAT 1019) General Palindromic Number (进制转换)
查看>>
(PAT 1073) Scientific Notation (字符串模拟题)
查看>>
(PAT 1080) Graduate Admission (排序)
查看>>