让前端飞Web网页前端后台技巧(CSS+HTML)

【Vue】组件通信(子传父 $emit)

2019-01-12  本文已影响0人  德育处主任
微信订阅号:Rabbit_svip

组件和组件之间是相互独立的。
如果父组件需要传值给子组件,可以看这里 【Vue】组件通信(父传子 props)




本节主要讲解 子组件 传值给 父组件。

主要用到的关键词是:$emit

HTML代码

<div id="app">
    <parent></parent>
</div>

JS代码

Vue.component('parent', {
    template: `
        <div>
            <child @show-txt="show"></child>
            <div v-if="name"> name: {{ name }} </div>
            <div v-if="age"> age: {{ age }}</div>
        </div>
    `,
    data() {
        return {
            name: '',
            age: ''
        }
    },
    methods: {
        show(data) {
            this.name = data.name;
            this.age = data.age;
        }
    }
});

Vue.component('child', {
    template: `        <button @click="on_click">btn</button>
    `,
    methods: {
        on_click() {
            this.$emit('show-txt', {name: 'Rabbit', age: 18})
        }
    }
});

new Vue({
    el: '#app'
})
微信订阅号:Rabbit_svip




微信订阅号:Rabbit_svip
上一篇下一篇

猜你喜欢

热点阅读