1,创建bus.js作为中转站
import Vue from 'Vue';
export default new Vue;
2,父组件index.vue
<template>
<div>
主页面
<nav-bar></nav-bar>
<tab-list></tab-list>
</div>
</template>
<script>
import navBar from './nav-bar.vue';
import tabList from './tab-list.vue';
export default{
components:{
navBar,
tabList
},
data(){
return{
}
},
}
</script>
<style>
</style>
3,子组件nav-bar.vue
<template>
<div>
111111111
<button @click="addClick"> 发送数据 </button>
</div>
</template>
<script>
import Bus from './bus.js';
export default{
data(){
return{
}
},
methods:{
addClick(){
Bus.$emit('sName', "这是一个兄弟组件传来的数据");
}
}
}
</script>
<style>
</style>
4,子组件tab-list.vue
<template>
<div>
222222
<div>{{val}}</div>
</div>
</template>
<script>
import Bus from './bus.js';
export default {
data() {
return {
val: ""
};
},
mounted() {
let that = this
Bus.$on("sName",function(content){
that.val = content
})
}
};
</script>