zoukankan      html  css  js  c++  java
  • Vue兄弟组件间传值 之 事件总线

    第一步:在src/utils目录下创建文件bus.js

    // 专门用来传递传递消息
    import Vue from 'vue'
    
    export default new Vue()

    注:公共文件bus.js专门用来传递消息

    第二步:数据发送方Child.vue

    <template>
      <div>
        <h1>组件1</h1>
        <button @click="passMsg">传递数据给兄弟节点</button>
      </div>
    </template>
    <script>
      import bus from '../utils/bus'
      export default {
        name: 'Child',
        methods: {
          passMsg () {
            bus.$emit('message', 'data from Child')
          }
        }
      }
    </script>

    第三步:数据接收方Child2.vue

    <template>
      <div>
        <h1>组件2</h1>
        来自兄弟节点的数据:{{msg}}
      </div>
    </template>
    <script>
      import bus from '../utils/bus'
      export default {
        name: 'Child2',
        data () {
          return {
            msg: ''
          }
        },
        mounted () {
          bus.$on('message', (data) => {
            this.msg = data
          })
        }
      }
    </script>

    第四步:App.vue

    <template>
      <div id="app">
        <h-child></h-child>
        <h-child2></h-child2>
      </div>
    </template>
    <script>
      // 引入子组件
      import HChild from './views/Child'
      import HChild2 from './views/Child2'
    
      export default {
        name: 'Parent',
        components: {
          HChild,
          HChild2
        }
      }
    </script>

    结果:
    在这里插入图片描述
    单击按钮

    在这里插入图片描述

     
  • 相关阅读:
    16进制数至字符串转换
    综合评价模型C++实现
    综合评价模型
    Eigen使用矩阵作为函数参数
    Eigen子矩阵操作
    Eigen矩阵基本运算
    c++矩阵运算库Eigen简介
    三次样条插值算法C++实现
    一个 图片 滚动 飞入的css特效
    在TTF字体中提取想要的文字
  • 原文地址:https://www.cnblogs.com/NanKe-Studying/p/14157278.html
Copyright © 2011-2022 走看看