vue实现父子组件之间的通信以及兄弟组件的通信功能示例


Posted in Javascript onJanuary 29, 2019

本文实例讲述了vue实现父子组件之间的通信以及兄弟组件的通信功能。分享给大家供大家参考,具体如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>3water.com vue父子组件通信、兄弟组件通信</title>
  <style>
    *{
      margin: 0;
      padding: 0;
      list-style: none;
    }
    table{
      text-align: center;
      margin:0 auto;
    }
    div{
      text-align: center;
    }
  </style>
</head>
<body>
  <div id="app">
    <table border="1" cellpadding="0" cellspacing="0">
      <tr><td colspan="3">父组件数据</td></tr>
      <tr><td>name</td><td>{{name}}{{ff()}}</td><td><input type="text" v-model="name"></td></tr>
      <tr><td>age</td><td>{{age}}{{ff()}}</td><td><input type="text" v-model="age"></td></tr>
    </table>
    <v-son :son-name="name" :son-age="age" @sza="gg"></v-son>
  </div>
  <template id="son">
    <div>
      <button @click="sonChange">子组件按钮</button>
      <table border="1" cellpadding="0" cellspacing="0">
        <tr><td colspan="3">子组件数据</td></tr>
        <tr><td>name</td><td>{{sonName}}</td><td><input type="text" v-model="sonName"></td></tr>
        <tr><td>age</td><td>{{sonAge}}</td><td><input type="text" v-model="sonAge"></td></tr>
      </table>
      <g-son :g-name="sonName" :g-age="sonAge"></g-son>
    </div>
  </template>
  <template id="vgson">
    <div>
      <button @click="gchan">孙子组件按钮</button>
      <table border="1" cellpadding="0" cellspacing="0">
        <tr><td colspan="3">孙子组件数据</td></tr>
        <tr><td>name</td><td>{{gName}}</td><td><input type="text" v-model="gName"></td></tr>
        <tr><td>age</td><td>{{gAge}}</td><td><input type="text" v-model="gAge"></td></tr>
      </table>
    </div>
  </template>
</body>
<script src="https://cdn.bootcss.com/vue/2.4.4/vue.min.js"></script>
<script>
  var bus=new Vue();
const app=new Vue({
  el:"#app",
  data:{
    name:"keep",
    age:"28"
  },
  methods:{
   gg(val1,val2){
     this.name=val1
     this.age=val2
   },
    ff(){
      bus.$on("suibian", (val1,val2)=> {
        this.name=val1;
        this.age=val2
      })
    }
  },
  components:{
    "vSon":{
      template:"#son",
      methods:{
       sonChange(){
         this.$emit("sza",this.sonName,this.sonAge)
       }
      },
      props:["sonName","sonAge"],
      components:{
        "gSon":{
          template:"#vgson",
          props:["gName","gAge"],
          methods:{
            gchan(){
              bus.$emit("suibian",this.gName,this.gAge);
            },
        }
        }
      },
    }
  }
})
</script>
</html>

这里使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码,可得如下运行效果:

vue实现父子组件之间的通信以及兄弟组件的通信功能示例

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
Prototype使用指南之hash.js
Jan 10 Javascript
js call方法详细介绍(js 的继承)
Nov 18 Javascript
JavaScript中的类数组对象介绍
Dec 30 Javascript
JavaScript实现带播放列表的音乐播放器实例分享
Mar 07 Javascript
浅析JavaScript中浏览器的兼容问题
Apr 19 Javascript
JS数组返回去重后数据的方法解析
Jan 03 Javascript
Javascript 实现计算器时间功能详解及实例(二)
Jan 08 Javascript
angularjs ui-router中路由的二级嵌套
Mar 10 Javascript
vue-cli webpack 引入swiper的操作方法
Sep 15 Javascript
js的各种数据类型判断的介绍
Jan 19 Javascript
在vue中利用v-html按分号将文本换行的例子
Nov 14 Javascript
JavaScript cookie原理及使用实例
May 08 Javascript
vue实现的下拉框功能示例
Jan 29 #Javascript
angular4中引入echarts的方法示例
Jan 29 #Javascript
微信小程序实现炫酷的弹出式菜单特效
Jan 28 #Javascript
微信小程序实现页面浮动导航
Jan 28 #Javascript
微信小程序顶部导航栏滑动tab效果
Jan 28 #Javascript
详解基于node.js的脚手架工具开发经历
Jan 28 #Javascript
微信小程序实现顶部导航特效
Jan 28 #Javascript
You might like
eaglephp使用微信api接口开发微信框架
2014/01/09 PHP
php设置session值和cookies的学习示例
2014/03/21 PHP
PHP中file_exists函数不支持中文名的解决方法
2014/07/26 PHP
PHP数组中头部和尾部添加元素的方法(array_unshift,array_push)
2017/04/10 PHP
php 数组元素快速去重
2017/05/05 PHP
yii插入数据库防并发的简单代码
2017/05/27 PHP
Laravel学习教程之model validation的使用示例
2017/10/23 PHP
在Laravel5.6中使用Swoole的协程数据库查询
2018/06/15 PHP
javascript中检测变量的类型的代码
2010/12/28 Javascript
JQuery操作iframe父页面与子页面的元素与方法(实例讲解)
2013/11/20 Javascript
ExtJS如何设置与获取radio控件的选取状态
2014/01/22 Javascript
jQuery中last()方法用法实例
2015/01/06 Javascript
老司机带你解读jQuery插件开发流程
2016/05/16 Javascript
基于jquery实现的银行卡号每隔4位自动插入空格的实现代码
2016/11/22 Javascript
微信小程序支付之c#后台实现方法
2017/10/19 Javascript
vue2.0s中eventBus实现兄弟组件通信的示例代码
2017/10/25 Javascript
微信小程序实现加入购物车滑动轨迹
2020/11/18 Javascript
在Linux下调试Python代码的各种方法
2015/04/17 Python
pandas中的DataFrame按指定顺序输出所有列的方法
2018/04/10 Python
python3+PyQt5泛型委托详解
2018/04/24 Python
用pycharm开发django项目示例代码
2018/10/24 Python
详解Python:面向对象编程
2019/04/10 Python
Python协程 yield与协程greenlet简单用法示例
2019/11/22 Python
Python如何使用argparse模块处理命令行参数
2019/12/11 Python
利用PyCharm操作Github(仓库新建、更新,代码回滚)
2019/12/18 Python
基于python实现坦克大战游戏
2020/10/27 Python
Java程序员综合测试题
2014/04/25 面试题
网络公司美工设计工作个人的自我评价
2013/11/03 职场文书
仓库管理专业个人的自我评价
2013/12/30 职场文书
检讨书范文2000字
2015/01/28 职场文书
聘任证明怎么写
2015/03/02 职场文书
2016天猫双十一广告语
2016/01/28 职场文书
2019年警察入党转正申请书最新范文
2019/09/03 职场文书
Opencv实现二维直方图的计算及绘制
2021/07/21 Python
win10更新失败无限重启解决方法
2022/04/19 数码科技
Python加密与解密模块hashlib与hmac
2022/06/05 Python