vuejs事件中心管理组件间的通信详解


Posted in Javascript onAugust 09, 2017

本文为大家分享了vuejs事件中心管理组件间的通信,供大家参考,具体内容如下

事件中心

这个可以是一个空的全局的Vue实例,其他的组件利用这个实例emit和on自定义事件,这样组件定义了自己的事件处理方法。

import Vue from 'Vue'
window.eventHub = new Vue();

事件监听和注销监听

事件监听应在更组件的created钩子函数中进行,在组件销毁前应注销事件监听

//hook 
 created: function () {
 //listen event
 window.eventHub.$on('switchComments',this.switchComments);
 window.eventHub.$on('removeIssue',this.removeIssue);
 window.eventHub.$on('saveComment',this.saveComment);
 window.eventHub.$on('removeComment',this.removeComment);

 //get init data
 var that =this;
 axios.get('issue/index')
 .then(function (resp) {
  that.issue_list=resp.data;
 });
 },
 beforeDestroy: function () {
 window.eventHub.$off('switchComments');
 window.eventHub.$off('removeIssue');
 window.eventHub.$off('saveComment');
 window.eventHub.$off('removeComment');
 }

子组件的emit事件,注意这里用的window.$emit而不是this.emit

methods: {
 removeComment: function(index,cindex) {
  window.eventHub.$emit('removeComment', {index:index, cindex:cindex});
 },
 saveComment: function(index) {
  window.eventHub.$emit('saveComment', {index: index, comment: this.comment});
  this.comment="";
 }
 },

Note: 这其实还不是最理想的通信方式,下一篇我们看看vuex怎么玩

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
身份证号码前六位所代表的省,市,区, 以及地区编码下载
Apr 12 Javascript
js自执行函数的几种不同写法的比较
Aug 16 Javascript
多引号嵌套的变量命名的问题
May 09 Javascript
javascipt:filter过滤介绍及使用
Sep 10 Javascript
Javascript Memoizer浅析
Oct 16 Javascript
D3.js实现饼状图的方法详解
Sep 21 Javascript
JavaScript实现自动切换图片代码
Oct 11 Javascript
微信小程序Server端环境配置详解(SSL, Nginx HTTPS,TLS 1.2 升级)
Jan 12 Javascript
PHP 实现一种多文件上传的方法
Sep 20 Javascript
解决echarts的多个折现数据出现坐标和值对不上的问题
Dec 28 Javascript
javascript设计模式 ? 中介者模式原理与用法实例分析
Apr 20 Javascript
如何在vue 中使用柱状图 并自修改配置
Jan 21 Vue.js
JS实现的加减乘除四则运算计算器示例
Aug 09 #Javascript
AngularJS ionic手势事件的使用总结
Aug 09 #Javascript
Vue2.0实现将页面中表格数据导出excel的实例
Aug 09 #Javascript
webpack 1.x升级过程中的踩坑总结大全
Aug 09 #Javascript
微信小程序开发教程之增加mixin扩展
Aug 09 #Javascript
javascript编程开发中取色器及封装$函数用法示例
Aug 09 #Javascript
vuejs父子组件之间数据交互详解
Aug 09 #Javascript
You might like
php数组函数序列之array_combine() - 数组合并函数使用说明
2011/10/29 PHP
php控制文件下载速度的方法
2015/03/24 PHP
PHP实现冒泡排序的简单实例
2016/05/26 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
Jquery 获得服务器控件值的方法小结
2010/05/11 Javascript
jquery入门—编写一个导航条(可伸缩)
2013/01/07 Javascript
jquery中交替点击事件toggle方法的使用示例
2013/12/08 Javascript
浅析XMLHttpRequest的缓存问题
2013/12/13 Javascript
PHP结合jQuery实现红蓝投票功能特效
2015/07/22 Javascript
利用jQuery和CSS将背景图片拉伸
2015/10/16 Javascript
jQuery替换节点用法示例(使用replaceWith方法)
2016/09/08 Javascript
深入理解JavaScript中的预解析
2017/01/04 Javascript
如何使用JS在HTML中自定义字符串格式化
2017/07/20 Javascript
微信小程序实现上传图片功能
2018/05/28 Javascript
浅谈在不使用ssr的情况下解决Vue单页面SEO问题(2)
2018/11/08 Javascript
IntelliJ IDEA编辑器配置vue高亮显示
2019/09/26 Javascript
微信小程序实现音乐播放器
2019/11/20 Javascript
[00:59]PWL开团时刻DAY7——我在赶
2020/11/06 DOTA
Python subprocess模块学习总结
2014/03/13 Python
python中list常用操作实例详解
2015/06/03 Python
Python numpy生成矩阵、串联矩阵代码分享
2017/12/04 Python
Django异步任务之Celery的基本使用
2019/03/23 Python
Python实现的爬取百度贴吧图片功能完整示例
2019/05/10 Python
Python TCPServer 多线程多客户端通信的实现
2019/12/31 Python
Python selenium文件上传下载功能代码实例
2020/04/13 Python
在python中使用nohup命令说明
2020/04/16 Python
Python如何截图保存的三种方法(小结)
2020/09/01 Python
详解html5页面 rem 布局适配方法
2018/01/12 HTML / CSS
处理textarea中的换行和空格
2019/12/12 HTML / CSS
饮料业务员岗位职责
2013/12/15 职场文书
公益活动邀请函
2014/02/05 职场文书
学习决心书
2014/03/11 职场文书
市场拓展计划书
2014/05/03 职场文书
优秀少先队员主要事迹材料
2014/05/28 职场文书
领导工作表现评语
2015/01/04 职场文书
学习nginx基础知识
2021/09/04 Servers