Vue.js中兄弟组件之间互相传值实例


Posted in Javascript onJune 01, 2017

兄弟组件之间互相传值,需要建立一个“中转站”(新的vue实例),并且需要主动触发。

实例上的$on方法来接受监听。

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>组件传值</title>
 <script src="vue.js"></script>
</head>
<body>
 <div id="box">
 <child1></child1>
 <child2></child2>
 </div>

 <template id="c1">
 <h1>~~~~~~我是哥哥~~~~{{msg}} <button @click='fn'>点击</button></h1>
 </template>
 <template id="c2">
 <h3>~~~~~~我是弟弟~~~~{{msg2}}</h3>
 </template>
</body>
</html>
<script>
 var Hub=new Vue();  // 1) 中转站,其中不需要设置任何参数

 var vm=new Vue({
 el: '#box',
 components:{
  child1:{
  template:'#c1',
  data:function(){
   return {
   msg: 'hello'
   }
  },
  methods:{
   fn:function(){
   // 2) 主动触发监听(中转站触发监听)
   console.log(this.msg); //hello
   Hub.$emit('change',this.msg) //$emit触发监听方法
   }
  }
  },
  child2:{
  template:'#c2',
  data:function(){
   return {
   msg2: 'world'
   }
  },
  // 创建完成  new Vue  create mount
  // 钩子函数
  created(){
   // 3) 接收监听  $on('事件名称',function(val){}) val是传递过来的值
   Hub.$on('change',function(val){
   console.log(val) //hello
   // this.msg2 = val;
   })
  }
  }
  
 }
 })
</script>

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

Javascript 相关文章推荐
JavaScript方法和技巧大全
Dec 27 Javascript
JavaScript 更严格的相等 [译]
Sep 20 Javascript
jQuery实现定时读取分析xml文件的方法
Jul 16 Javascript
Javascript 实现计算器时间功能详解及实例(二)
Jan 08 Javascript
vue基于Element构建自定义树的示例代码
Sep 19 Javascript
jQuery实现所有验证通过方可提交的表单验证
Nov 21 jQuery
基于vue.js中关于下拉框的值默认及绑定问题
Aug 22 Javascript
为nuxt项目写一个面包屑cli工具实现自动生成页面与面包屑配置
Sep 29 Javascript
JS实现烟花爆炸效果
Mar 10 Javascript
Vue使用vue-draggable 插件在不同列表之间拖拽功能
Mar 12 Javascript
nuxt引入组件和公共样式的操作
Nov 05 Javascript
使用AutoJs实现微信抢红包的代码
Dec 31 Javascript
Vue.Draggable实现拖拽效果
Jul 29 #Javascript
JS请求servlet功能示例
Jun 01 #Javascript
vue.js加载新的内容(实例代码)
Jun 01 #Javascript
深入理解JavaScript创建对象的多种方式以及优缺点
Jun 01 #Javascript
解决BootStrap Fileinput手机图片上传显示旋转问题
Jun 01 #Javascript
详解Vue2.0里过滤器容易踩到的坑
Jun 01 #Javascript
Angularjs验证用户输入的字符串是否为日期时间
Jun 01 #Javascript
You might like
Laravel5中contracts详解
2015/03/02 PHP
谈谈 PHP7新增功能
2015/12/16 PHP
写了一个layout,拖动条连贯,内容区可为iframe
2007/08/19 Javascript
基于jQuery的的一个隔行变色,鼠标移动变色的小插件
2010/07/06 Javascript
js中通过split函数分割字符串成数组小例子
2013/09/21 Javascript
从jquery的过滤器.filter()方法想到的
2013/09/29 Javascript
禁止iframe页面的所有js脚本如alert及弹出窗口等
2014/09/03 Javascript
js获取浏览器基本信息大全
2014/11/27 Javascript
小议JavaScript中Generator和Iterator的使用
2015/07/29 Javascript
div中文字内容溢出常见的解决方法
2017/03/16 Javascript
基于jquery实现多选下拉列表
2017/08/02 jQuery
JavaScript中一些特殊的字符运算
2017/08/17 Javascript
MUI顶部选项卡的用法(tab-top-webview-main)详解
2017/10/08 Javascript
JavaScript函数绑定用法实例分析
2017/11/14 Javascript
vue实现键盘输入支付密码功能
2018/08/18 Javascript
jquery.param()实现数组或对象的序列化方法
2018/10/08 jQuery
解决基于 keep-alive 的后台多级路由缓存问题
2020/12/23 Javascript
python使用os模块的os.walk遍历文件夹示例
2014/01/27 Python
python通过ftplib登录到ftp服务器的方法
2015/05/08 Python
Python实现快速傅里叶变换的方法(FFT)
2018/07/21 Python
python 实现批量xls文件转csv文件的方法
2018/10/23 Python
对Python w和w+权限的区别详解
2019/01/23 Python
Python如何实现在字符串里嵌入双引号或者单引号
2020/03/02 Python
基于django2.2连oracle11g解决版本冲突的问题
2020/07/02 Python
突袭HTML5之Javascript API扩展5—其他扩展(应用缓存/服务端消息/桌面通知)
2013/01/31 HTML / CSS
英国在线自行车商店:Evans Cycles
2016/09/26 全球购物
乌克兰时尚鞋子和衣服购物网站:Born2be
2018/05/24 全球购物
开办加工厂创业计划书
2014/01/03 职场文书
领导干部培训感言
2014/01/23 职场文书
舞蹈毕业生的自我评价
2014/03/05 职场文书
董事长助理工作职责范本
2014/07/01 职场文书
化学教育专业求职信
2014/07/08 职场文书
党员学习中共十八大思想报告
2014/09/12 职场文书
公司处罚决定书
2015/06/24 职场文书
十一月早安语录:把心放轻,人生就是一朵自在的云
2019/11/04 职场文书
vue实现Toast组件轻提示
2022/04/10 Vue.js