Vue2单一事件管理组件通信


Posted in Javascript onMay 09, 2017

本文为大家分享了vue $emit 和 $on 组件通信,供大家参考,具体内容如下

<!DOCTYPE html> 
<html lang="en"> 
<head> 
 <meta charset="UTF-8" /> 
 <title>Vue2-单一事件管理组件通信</title> 
 <script src="vue.js"></script> 
 <script type="text/javascript"> 
 
 //准备一个空的实例对象 
 var Event = new Vue(); 
 
 //组件A 
 var A = { 
  template: ` 
   <div> 
    <span>我是A组件的数据->{{a}}</span> 
    <input type="button" value="把A数据传给C" @click = "send"> 
   </div> 
  `, 
  methods: { 
   send () { 
    Event.$emit("a-msg", this.a); 
   } 
  }, 
  data () { 
   return { 
    a: "我是a组件中数据" 
   } 
  } 
 }; 
 //组件B 
 var B = { 
  template: ` 
   <div> 
    <span>我是B组件的数据->{{a}}</span> 
    <input type="button" value="把B数据传给C" @click = "send"> 
   </div> 
  `, 
  methods: { 
   send () { 
    Event.$emit("b-msg", this.a); 
   } 
  }, 
  data () { 
   return { 
    a: "我是b组件中数据" 
   } 
  } 
 }; 
 //组件C 
 var C = { 
  template: ` 
   <div> 
    <h3>我是C组件</h3> 
    <span>接收过来A的数据为: {{a}}</span> 
    <br> 
    <span>接收过来B的数据为: {{b}}</span> 
   </div> 
  `, 
  mounted () { 
   //接收A组件的数据 
   Event.$on("a-msg", function (a) { 
    this.a = a; 
   }.bind(this)); 
 
   //接收B组件的数据 
   Event.$on("b-msg", function (a) { 
    this.b = a; 
   }.bind(this)); 
  }, 
  data () { 
   return { 
    a: "", 
    b: "" 
   } 
  } 
 }; 
 window.onload = function () { 
  new Vue({ 
   el: "#box", 
   components: { 
    "dom-a": A, 
    "dom-b": B, 
    "dom-c": C 
   } 
  }); 
 }; 
 
 
 </script> 
</head> 
<body> 
 <div id="box"> 
  <dom-a></dom-a>  
  <dom-b></dom-b>  
  <dom-c></dom-c>  
 </div> 
 
</body> 
</html>

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

Javascript 相关文章推荐
javascript div 弹出可拖动窗口
Feb 26 Javascript
javascript Base类 包含基本的方法
Jul 22 Javascript
javascript tips提示框组件实现代码
Nov 19 Javascript
缓动函数requestAnimationFrame 更好的实现浏览器经动画
Dec 07 Javascript
JS 毫秒转时间示例代码
Sep 22 Javascript
利用js动态添加删除table行的示例代码
Dec 16 Javascript
javascript验证邮件地址和MX记录的方法
Jun 16 Javascript
gulp-uglify 与gulp.watch()配合使用时报错(重复压缩问题)
Aug 24 Javascript
微信小程序 下拉菜单简单实例
Apr 13 Javascript
vue 页面加载进度条组件实例
Feb 05 Javascript
Vue中实现权限控制的方法示例
Jun 07 Javascript
小程序使用watch监听数据变化的方法详解
Sep 20 Javascript
react-router实现按需加载
May 09 #Javascript
BootStrap表单时间选择器详解
May 09 #Javascript
兼容浏览器的js事件绑定函数(详解)
May 09 #Javascript
JS触摸与手势事件详解
May 09 #Javascript
Angualrjs 表单验证的两种方式(失去焦点验证和点击提交验证)
May 09 #Javascript
微信小程序之获取当前位置经纬度以及地图显示详解
May 09 #Javascript
JS中的数组转变成JSON格式字符串的方法
May 09 #Javascript
You might like
php 生成文字png图片的代码
2011/04/17 PHP
PHP冒泡排序算法代码详细解读
2011/07/17 PHP
PHP检测字符串是否为UTF8编码的常用方法
2014/11/21 PHP
CI框架常用方法小结
2016/05/17 PHP
php屏蔽错误及提示的方法
2020/05/10 PHP
jquery下动态显示jqGrid以及jqGrid的属性设置容易出现问题的解决方法
2010/10/22 Javascript
jquery DIV撑大让滚动条滚到最底部代码
2013/06/06 Javascript
jQuery动态显示和隐藏datagrid中的某一列的方法
2013/12/11 Javascript
JavaScript 学习笔记之数据类型
2015/01/14 Javascript
javascript实现简单的二级联动
2015/03/19 Javascript
使用vue.js2.0 + ElementUI开发后台管理系统详细教程(一)
2017/01/21 Javascript
微信小程序技巧之show内容展示,上传文件编码问题
2017/01/23 Javascript
如何写好你的JavaScript【推荐】
2017/03/02 Javascript
jQuery设计思想
2017/03/07 Javascript
Vuex和前端缓存的整合策略详解
2017/05/09 Javascript
详解在AngularJS的controller外部直接获取$scope
2017/06/02 Javascript
jQuery选取所有复选框被选中的值并用Ajax异步提交数据的实例
2017/08/04 jQuery
layui点击左侧导航栏,实现不刷新整个页面,只刷新局部的方法
2019/09/25 Javascript
vue+element tabs选项卡分页效果
2020/06/29 Javascript
JS document内容及样式操作完整示例
2020/01/14 Javascript
VUE UPLOAD 通过ACTION返回上传结果操作
2020/09/07 Javascript
Element el-button 按钮组件的使用详解
2021/02/01 Javascript
[05:08]2014DOTA2国际邀请赛 Hao专访复仇的胜利很爽
2014/07/15 DOTA
python中 chr unichr ord函数的实例详解
2017/08/06 Python
Python聊天室程序(基础版)
2018/04/01 Python
python3解析库lxml的安装与基本使用
2018/06/27 Python
python程序 线程队列queue使用方法解析
2019/09/23 Python
Python 利用邮件系统完成远程控制电脑的实现(关机、重启等)
2019/11/19 Python
一文详述 Python 中的 property 语法
2020/09/01 Python
Python 实现劳拉游戏的实例代码(四连环、重力四子棋)
2021/03/03 Python
HTML5离线应用与客户端存储的实现
2018/05/03 HTML / CSS
英国家庭珠宝商:T. H. Baker
2018/02/08 全球购物
小学开学典礼主持词
2014/03/19 职场文书
2014医学院领导班子对照检查材料思想汇报
2014/09/19 职场文书
瘦西湖导游词
2015/02/03 职场文书
基于Redis6.2.6版本部署Redis Cluster集群的问题
2022/04/01 Redis