博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vue2.x中的父子组件相互通信
阅读量:7073 次
发布时间:2019-06-28

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

原理


在 Vue.js 中,父子组件的关系可以总结为 props down, events up

父组件通过 props 向下传递数据给子组件,子组件通过 events 给父组件发送消息。看看它们是怎么工作的。

743207-20170512201041863-1277136045.png

业务场景


这里指的是直接父子级关系的通信

  • 美女(子组件)将消息发送给大群(父组件)
  • 大群(父组件)收到美女发送的消息后再回个信息给美女(子组件)

父组件


template

注意的点:

  • 这里在父组件使用v-on来监听子组件上的自定义事件($emit的变化),一旦发生变化noticeGirl方法就会触发

注意的点:

  • 这里methods中定义的方法introduceSelf就是父组件接收到子组件发出的$emit的事件处理程序

子组件


template

script

注意的点:

  • 子组件使用$emit发出自定义事件

相比于Vue1.x的变化:

  • $dispatch 和 $broadcast 已经被弃用

*官方推荐的通信方式

  • 首选使用Vuex
  • 使用事件总线:eventBus,允许组件自由交流
  • 具体可见:https://cn.vuejs.org/v2/guide/migration.html#dispatch-和-broadcast-替换

结果


743207-20170430123839490-1374408131.png

743207-20170430123846115-276752306.png

743207-20170430123854647-1561822726.png

转载地址:http://aikml.baihongyu.com/

你可能感兴趣的文章
MPLS TE第一步:创建基本TE隧道
查看>>
windows中禁止U盘写入
查看>>
Bash技巧总结
查看>>
在窗体中添加标签Label、Icon图标
查看>>
Perl脚本学习笔记(一)
查看>>
基于BIND实现DNS的解析、主从、子域、请求转发、访问控制
查看>>
Oracle Number用法
查看>>
nat
查看>>
基于Cisco技术的MPLS原理以及应用实现[一]
查看>>
iPhone/Mac Objective-C内存管理原理
查看>>
极速理解设计模式系列:14.轻量级模式(Flyweight Pattern)
查看>>
Resin HTTPS 安装指南
查看>>
无法加入域
查看>>
在RHEL5下构建LAMP网站服务平台之架设Discuz!论坛
查看>>
.NET应用架构设计:原则、模式与实践 目录预览
查看>>
关于vector性能的测试(一)
查看>>
【移动开发】Android应用开发者应该知道的东西
查看>>
Oracle Study之案例--通过IPCS查看共享内存之“怪现象”
查看>>
func 安装之艰辛历程
查看>>
Ubuntu Server 10.10 操作手记
查看>>