美文网首页
vue 兄弟组件传值的方法

vue 兄弟组件传值的方法

作者: 嗯哼曼 | 来源:发表于2019-05-09 11:05 被阅读0次

1、兄弟之间传递数据需要借助于事件车,通过事件车的方式传递数据
2、创建一个Vue的实例,让各个兄弟共用同一个事件机制。
3、传递数据方,通过一个事件触发bus.$emit(方法名,传递的数据)。
4、接收数据方,通过mounted(){}触发bus.$on (方法名,function(接收数据的参数){用该组件的数据接收传递过来的数据}),此时函数中的this已经发生了改变,可以使用箭头函数。

demo 如下:
首先创建一个单独的js文件bus.js,内容如下

import Vue from 'vue'
export default new Vue

父组件如下:

<template>
     <components-a></components-a>
     <components-b></components-b>
</template>

子组件a如下:

<template>
      <div>
           <button @click="abtn">A按钮</button>
      </div>
</template>
<script>
import  from '../../js/bus.js'
export default {
      name: 'components-a',
      data () {
        return {
                ‘msg':"我是组件A"
        }
      },
      methods:{
           abtn:function(){
                  let  _this = this;
                   //$emit这个方法会触发一个事件
                   bus .$emit("myFun", _this.msg)  
           }
      }
}
</script>

子组件b如下:

<template>
     <div>
         <div>{{btext}}</div>
     </div>
</template>
<script>
import bus from '../../js/bus.js'
export default {
   name: 'components-b',
   data () {
        return {
           'btext':"我是B组件内容"
        }
   },
   created:function(){
       this.bbtn();
   },
   methods:{
       bbtn:function(){
            bus .$on("myFun",(message)=>{   
            //这里最好用箭头函数,不然this指向有问题
                 this.btext = message      
            })
       }
    }
}
</script>

这样的话点击组件A里面的按钮,组件B即可获取A组件传来的值。👌

相关文章

  • vue的父子传值和使用vuex兄弟传值

    在父组件中引入子组件 父传子 父组件 子组件 子传父 子组件 父组件 兄弟传值 兄弟之间可以通过vue官网的方法,...

  • Vue组件之间的传值

    Vue父子组件之间的传值(props)兄弟组件 VUEX

  • vue兄弟组件传值三种方法总结

    在vue开发中总会遇到组件传值问题,今天总结一下兄弟组件之间的传值方法。1、子传父,父传子2、vuex3、even...

  • vue兄弟组件传值三种方法总结

    在vue开发中总会遇到组件传值问题,今天总结一下兄弟组件之间的传值方法。1. 子传父,父传子 2. vuex 3....

  • Vue.js 父子组件传值 . 兄弟组件传值

    概述 vue中组件之间的传值传值情况主要有以下三种 父组件向子组件传值子组件向父组件传值兄弟组件之间相互传值或者是...

  • 框架部分

    Vue 环境搭建、配置路由 基础指令(选项数据、模板语法) 计算属性、方法、侦听器 组件 组件传值(父子组件、兄弟...

  • Uniapp兄弟组件传值

    兄弟组件a.vue和b.vue之间的传值方式 a.vue b.vue

  • Day5 拾遗 emit

    vue emit多个参数利用arguments来获取子组件传值或者兄弟组件通过emit传值, 通过argument...

  • 组件通信

    vue传值可分为父子之间传值、兄弟组件之间传值、跨代组件之间传值 1.父子之间传值:可以使用$emit/props...

  • 2019-03-13

    vue父子组件传值,(父组件向子组件传值用prop ,子组件向父组件传值:子组件调用父组件方法值以参数的方式传递)...

网友评论

      本文标题:vue 兄弟组件传值的方法

      本文链接:https://www.haomeiwen.com/subject/efwioqtx.html