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 相关文章推荐
jQuery UI Autocomplete 1.8.16 中文输入修正代码
Apr 16 Javascript
Extjs4 GridPanel 的几种样式使用介绍
Apr 18 Javascript
jQuery实现带幻灯的tab滑动切换风格菜单代码
Aug 27 Javascript
详解JavaScript的AngularJS框架中的作用域与数据绑定
Mar 04 Javascript
jQuery使用正则表达式限制文本框只能输入数字
Jun 18 Javascript
半个小时学json(json传递示例)
Dec 25 Javascript
node.js利用redis数据库缓存数据的方法
Mar 01 Javascript
Angular排序实例详解
Jun 28 Javascript
浅谈 Vue 项目优化的方法
Dec 16 Javascript
vue富文本框(插入文本、图片、视频)的使用及问题小结
Aug 17 Javascript
vue 组件中使用 transition 和 transition-group实现过渡动画
Jul 09 Javascript
Layui弹框中数据表格中可双击选择一条数据的实现
May 06 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使用mkdir创建多级目录入门例子
2014/05/10 PHP
javascript中的float运算精度实例分析
2010/08/21 Javascript
javascript利用apply和arguments复用方法
2013/11/25 Javascript
jQuery操作select下拉框的text值和value值的方法
2014/05/31 Javascript
javascript实现浏览器窗口传递参数的方法
2014/09/03 Javascript
JavaScript常用小技巧小结
2014/12/29 Javascript
js的flv视频播放器插件使用方法
2015/06/23 Javascript
js实现PC端和移动端刮卡效果
2020/03/27 Javascript
关于Vue在ie10下空白页的debug小结
2018/05/02 Javascript
微信{"errcode":48001,"errmsg":"api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]"}
2018/10/12 Javascript
ajax跨域访问遇到的问题及解决方案
2019/05/23 Javascript
微信小程序文字显示换行问题
2019/07/28 Javascript
layui表格分页 记录勾选的实例
2019/09/02 Javascript
vue表单数据交互提交演示教程
2019/11/13 Javascript
vue.config.js常用配置详解
2019/11/14 Javascript
[07:48]DOTA2上海特级锦标赛主赛事首日RECAP
2016/03/04 DOTA
python结合API实现即时天气信息
2016/01/19 Python
python with提前退出遇到的坑与解决方案
2018/01/05 Python
python实现pdf转换成word/txt纯文本文件
2018/06/07 Python
python使用selenium登录QQ邮箱(附带滑动解锁)
2019/01/23 Python
python移位运算的实现
2019/07/15 Python
django echarts饼图数据动态加载的实例
2019/08/12 Python
Python:type、object、class与内置类型实例
2019/12/25 Python
python使用opencv resize图像不进行插值的操作
2020/07/05 Python
解决PyCharm IDE环境下,执行unittest不生成测试报告的问题
2020/09/03 Python
python学习之使用Matplotlib画实时的动态折线图的示例代码
2021/02/25 Python
美国一家运动专业鞋类零售商:Warehouse Shoe Sale(WSS)
2018/03/28 全球购物
加拿大的标志性百货公司:Hudson’s Bay(哈得逊湾)
2019/09/03 全球购物
护士自我介绍信
2014/01/13 职场文书
教学评估实施方案
2014/03/16 职场文书
研讨会主持词
2014/04/02 职场文书
校园标语大全
2014/06/19 职场文书
教师党员批评与自我批评
2014/10/15 职场文书
美术教师求职信范文
2015/03/20 职场文书
Nginx反向代理及负载均衡如何实现(基于linux)
2021/03/31 Servers
利用python进行数据加载
2021/06/20 Python