Vue2.0父组件与子组件之间的事件发射与接收实例代码


Posted in Javascript onSeptember 19, 2017

关于vue2.0的事件发射和接收,大家都知道$dispatch$broadcast在vue2.0已经被弃用了,取而代之的是更加方便快捷的方式,使用事件中心,组件通过它来互相通信,不管组件在哪一个层都可以通过实例化一个空Vue来实现。上案例:                       

Vue2.0父组件与子组件之间的事件发射与接收实例代码                                                                                                         

        这是自己写的一个小案例,功能就是点击子组件的加减按钮控制父组件的数量变化。原理就是子组件的加减按钮点击时分发事件,父组件接收事件。相信html和css的代码大家都没问题,这里不赘述,直接说js部分,首先在项目初始化时先给data添加名为eventHub的空Vue对象,作用是让任何组件都可以调用事件发射和接收的方法。代码如下:

Vue2.0父组件与子组件之间的事件发射与接收实例代码

        在点击加号按钮时向父组件派发事件:

Vue2.0父组件与子组件之间的事件发射与接收实例代码

        由于我写的json数据是两层的:

Vue2.0父组件与子组件之间的事件发射与接收实例代码

        所以两层循环把数据展示在页面上,要精确将某个食物的数量显示必须知道第一大类和这一大类下这个食物的索引值,在这里在html那里先把两个索引传进子组件,在分发事件时再和数量一起打包成对象发射给父组件。

Vue2.0父组件与子组件之间的事件发射与接收实例代码

        记得子组件要在props里对child,parent进行声明,接着是父组件对发射过来的countFunc进行接收:

Vue2.0父组件与子组件之间的事件发射与接收实例代码

        到了这个时候将子组件传过来的countFunc里的obj进行console.log(),你会发现父组件已经接收了一个对象:Object {count: 1, index: 0, parent: 0},也就是当我点击一下苹果的加号按钮时传过来count为1说明数量为1,parent索引为0说明是第一大类,index为0说明是第一大类下的苹果,至此已经实现了父子组件之间的事件发射和接收。

        完整代码如下:

1.父组件:

Vue2.0父组件与子组件之间的事件发射与接收实例代码

Vue2.0父组件与子组件之间的事件发射与接收实例代码

Vue2.0父组件与子组件之间的事件发射与接收实例代码

Vue2.0父组件与子组件之间的事件发射与接收实例代码

2.子组件:

Vue2.0父组件与子组件之间的事件发射与接收实例代码

Vue2.0父组件与子组件之间的事件发射与接收实例代码

Vue2.0父组件与子组件之间的事件发射与接收实例代码

总结

以上所述是小编给大家介绍的Vue2.0父组件与子组件之间的事件发射与接收,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript 命名空间 使用介绍
Aug 29 Javascript
jQuery实现折线图的方法
Feb 28 Javascript
jQuery实现的导航动画效果(附demo源码)
Apr 01 Javascript
JavaScript中的操作符类型转换示例总结
May 30 Javascript
最简单纯JavaScript实现Tab标签页切换的方式(推荐)
Jul 25 Javascript
bootstrap-datetimepicker实现只显示到日期的方法
Nov 25 Javascript
基于bootstrap风格的弹框插件
Dec 28 Javascript
js实现简单的选项卡效果
Feb 23 Javascript
Angular2关于@angular/cli默认端口号配置的问题
Jul 15 Javascript
Angular 作用域scope的具体使用
Dec 11 Javascript
JS实现快递单打印功能【推荐】
Jun 21 Javascript
vue+element-ui集成随机验证码+用户名+密码的form表单验证功能
Aug 05 Javascript
详解ES6之async+await 同步/异步方案
Sep 19 #Javascript
jQuery实现倒计时功能 jQuery实现计时器功能
Sep 19 #jQuery
jquery实现倒计时小应用
Sep 19 #jQuery
Angular客户端请求Rest服务跨域问题的解决方法
Sep 19 #Javascript
jQuery实现可兼容IE6的遮罩功能详解
Sep 19 #jQuery
jQuery选择器之表单元素选择器详解
Sep 19 #jQuery
JS实现静态页面搜索并高亮显示功能完整示例
Sep 19 #Javascript
You might like
PHP微信模板消息操作示例
2017/06/29 PHP
Laravel 实现在Blade模版中使用全局变量代替路径的例子
2019/10/22 PHP
PHP程序员简单的开展服务治理架构操作详解(一)
2020/05/14 PHP
javascript call方法使用说明
2010/01/11 Javascript
对字符串进行HTML编码和解码的JavaScript函数
2010/02/01 Javascript
JavaScript实现x秒后自动跳转到一个页面
2013/01/03 Javascript
JQuery获取或设置ckeditor的数据(示例代码)
2013/11/15 Javascript
JQuery实现带排序功能的权限选择实例
2015/05/18 Javascript
BootStrap中的table实现数据填充与分页应用小结
2016/05/26 Javascript
微信小程序开发之选项卡(窗口底部TabBar)页面切换
2017/04/12 Javascript
在vue-cli脚手架中配置一个vue-router前端路由
2017/07/03 Javascript
Vue之Watcher源码解析(1)
2017/07/19 Javascript
jQuery EasyUI Layout实现tabs标签的实例
2017/09/26 jQuery
AngularJS标签页tab选项卡切换功能经典实例详解
2018/05/16 Javascript
trackingjs+websocket+百度人脸识别API实现人脸签到
2018/11/26 Javascript
使用localStorage替代cookie做本地存储
2019/09/25 Javascript
使用vue-cli4.0快速搭建一个项目的方法步骤
2019/12/04 Javascript
[01:29:42]Liquid vs VP Supermajor决赛 BO 第一场 6.10
2018/07/05 DOTA
[41:13]完美世界DOTA2联赛PWL S2 Forest vs Rebirth 第一场 11.20
2020/11/20 DOTA
python根据路径导入模块的方法
2014/09/30 Python
Python标准库之循环器(itertools)介绍
2014/11/25 Python
python机器学习理论与实战(六)支持向量机
2018/01/19 Python
Python数据处理numpy.median的实例讲解
2018/04/02 Python
Pandas 数据框增、删、改、查、去重、抽样基本操作方法
2018/04/12 Python
python随机生成库faker库api实例详解
2019/11/28 Python
如何使用repr调试python程序
2020/02/28 Python
前端实现背景虚化但内容清晰且自适应 的实例代码
2019/08/01 HTML / CSS
英国最专业的健身器材供应商之一:Best Gym Equipment
2017/12/22 全球购物
MATCHESFASHION.COM美国官网:英国奢侈品零售商
2018/10/29 全球购物
求职信模板怎么做
2014/01/26 职场文书
股东合作协议书范本
2014/04/14 职场文书
离婚协议书范文2014
2014/10/16 职场文书
2015秋季幼儿园开学寄语
2015/03/25 职场文书
学生犯错保证书
2015/05/09 职场文书
暑假开始了,你的暑假学习计划写好了吗?
2019/07/04 职场文书
MySQL实现字段分割一行转多行的示例代码
2022/07/07 MySQL