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 相关文章推荐
fromCharCode和charCodeAt 方法
Dec 27 Javascript
IE10中flexigrid无法显示数据的解决方法
Jul 26 Javascript
5个最顶级jQuery图表类库插件【jquery插件库】
May 05 Javascript
Node.js学习之TCP/IP数据通讯(实例讲解)
Oct 11 Javascript
浅谈vue-cli加载不到dev-server.js的解决办法
Nov 24 Javascript
微信小程序实现给嵌套template模板传递数据的方式总结
Dec 18 Javascript
vue 动态绑定背景图片的方法
Aug 10 Javascript
微信小程序使用map组件实现检索(定位位置)周边的POI功能示例
Jan 23 Javascript
微信小程序导航栏滑动定位功能示例(实现CSS3的positionsticky效果)
Jan 24 Javascript
layer.open回调获取弹出层参数的实现方法
Sep 10 Javascript
Vue 数据绑定的原理分析
Nov 16 Javascript
JS开发前端团队展示控制器来为成员引流
Aug 14 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中实现记住密码自动登录的代码
2011/03/02 PHP
如何使用php判断服务器是否是HTTPS连接
2013/07/05 PHP
PHP实现图片不变型裁剪及图片按比例裁剪的方法
2016/01/14 PHP
JSON 教程 json入门学习笔记
2020/09/22 Javascript
JS字符串函数扩展代码
2011/09/13 Javascript
使用jQuery清空file文件域的解决方案
2013/04/12 Javascript
简单的Jquery遮罩层代码实例
2013/11/14 Javascript
js获得参数的getParameter使用示例
2014/02/26 Javascript
angularjs实现与服务器交互分享
2014/06/24 Javascript
javascript转换日期字符串为Date日期对象的方法
2015/02/13 Javascript
JavaScript实现算术平方根算法-代码超简单
2015/09/11 Javascript
微信小程序 页面跳转如何实现传值
2017/04/05 Javascript
BootStrap Table前台和后台分页对JSON格式的要求
2017/06/28 Javascript
Angularjs 事件指令详细整理
2017/07/27 Javascript
vue.js实现简单轮播图效果
2017/10/10 Javascript
webpack中使用iconfont字体图标的方法
2018/02/22 Javascript
javascript原生封装一个淡入淡出效果的函数测试实例代码
2018/03/19 Javascript
使用Vue组件实现一个简单弹窗效果
2018/04/23 Javascript
Node.js模块全局安装路径配置方法
2018/05/17 Javascript
JavaScript实现点击出现子菜单效果
2021/02/08 Javascript
[03:01]完美盛典趣味短片 DOTA2年度最佳&拉胯英雄
2019/12/07 DOTA
介绍Python中的文档测试模块
2015/04/28 Python
基于进程内通讯的python聊天室实现方法
2015/06/28 Python
深入理解python中的select模块
2017/04/23 Python
详解python中的线程
2018/02/10 Python
python解析json串与正则匹配对比方法
2018/12/20 Python
Python之时间和日期使用小结
2019/02/14 Python
python3实现表白神器
2019/04/09 Python
python中sys模块是做什么用的
2020/08/16 Python
解决Pycharm 运行后没有输出的问题
2021/02/05 Python
Css3实现无缝滚动防抖
2020/09/14 HTML / CSS
西班牙宠物用品和食品网上商店:Tiendanimal
2019/06/06 全球购物
英国领先的餐饮折扣俱乐部:Gourmet Society
2020/07/26 全球购物
挂牌仪式主持词
2014/03/20 职场文书
ROS系统将python包编译为可执行文件的简单步骤
2021/07/25 Python