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 相关文章推荐
jQuery一步一步实现跨浏览器的可编辑表格,支持IE、Firefox、Safari、Chrome、Opera
Aug 28 Javascript
JavaScript遍历table表格中的某行某列并打印其值
Jul 08 Javascript
JavaScript ES6的新特性使用新方法定义Class
Jun 28 Javascript
BootStrap Tooltip插件源码解析
Dec 27 Javascript
JS获得多个同name 的input输入框的值的实现方法
Jan 09 Javascript
canvas实现图像截取功能
Feb 06 Javascript
js实现点击切换checkbox背景图片的简单实例
May 08 Javascript
20行js代码实现的贪吃蛇小游戏
Jun 20 Javascript
jQuery实现的简单动态添加、删除表格功能示例
Sep 21 jQuery
详解vue 数据传递的方法
Apr 19 Javascript
ant design vue datepicker日期选择器中文化操作
Oct 28 Javascript
解决vue项目中出现Invalid Host header的问题
Nov 17 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判断字符以及字符串的包含方法属性
2008/08/30 PHP
php 操作数组(合并,拆分,追加,查找,删除等)
2012/07/20 PHP
PHP采集类Snoopy抓取图片实例
2014/06/19 PHP
VB中的RasEnumConnections函数返回632错误解决方法
2014/07/29 PHP
php生成圆角图片的方法
2015/04/07 PHP
jQuery 操作XML入门
2008/12/25 Javascript
jquery实现可拖动DIV自定义保存到数据的实例
2013/11/20 Javascript
javaScript如何生成xmlhttp
2013/12/16 Javascript
省市联动效果的简单实现代码(推荐)
2016/06/06 Javascript
bootstrapValidator.min.js表单验证插件
2017/02/09 Javascript
详解vue2.0的Element UI的表格table列时间戳格式化
2017/06/13 Javascript
JavaScript之json_动力节点Java学院整理
2017/06/29 Javascript
详解plotly.js 绘图库入门使用教程
2018/02/23 Javascript
vue 2.8.2版本配置刚进入时候的默认页面方法
2018/09/21 Javascript
说说如何在Vue.js中实现数字输入组件的方法
2019/01/08 Javascript
微信小程序 动态修改页面数据及参数传递过程详解
2019/09/27 Javascript
为nuxt项目写一个面包屑cli工具实现自动生成页面与面包屑配置
2019/09/29 Javascript
Vant 中的Toast设置全局的延迟时间操作
2020/11/04 Javascript
[53:10]完美世界DOTA2联赛决赛日 FTD vs GXR 第二场 11.08
2020/11/11 DOTA
Python脚本实现DNSPod DNS动态解析域名
2015/02/14 Python
Python字符串格式化输出方法分析
2016/04/13 Python
基于python神经卷积网络的人脸识别
2018/05/24 Python
详解django2中关于时间处理策略
2019/03/06 Python
Django model class Meta原理解析
2020/11/14 Python
美国第一香水网站:Perfume.com
2017/01/23 全球购物
时尚圣经:The Fashion Bible
2019/03/03 全球购物
巴西补充剂和维生素购物网站:Natue
2019/06/17 全球购物
eBay意大利购物网站:eBay.it
2019/09/04 全球购物
2014年党员整改措施范文
2014/09/21 职场文书
中学生旷课检讨书500字
2014/10/29 职场文书
幼儿园感恩节活动总结
2015/03/24 职场文书
2015年医务科工作总结范文
2015/05/26 职场文书
运动会通讯稿200字
2015/07/20 职场文书
学校2016年全国助残日活动总结
2016/04/01 职场文书
十二月早安励志心语大全
2019/12/03 职场文书
python实现股票历史数据可视化分析案例
2021/06/10 Python