vue 非父子传值

挂载方法 

**main.js**
let bus = new Vue()
Vue.prototype.bus = bus

 组件传送

**header组件**
<template>
    <header @click="changeTitle">{{title}}</header>
</template>
<script>
export default {
    name: 'header',
    data () {
        return {
            title: '头部'
        }
    },
    methods: {
        changeTitle () {
            this.bus.$emit('toChangeTitle','首页')
        }
    }
}
</script>

组件接收值

**footer组件**
<template>
    <footer>{{txt}}</footer>
</template>
<script>
export default {
    name: 'footer',
    mounted () {
        this.bus.$on('toChangeTitle', function (title) {
            console.log(title)
        })
    },
    data () {
        return {
            txt: '尾部'
        }
    }
}

猜你喜欢

转载自blog.csdn.net/Ajaxguan/article/details/81300369
今日推荐