组件传递数据——$emit(子传父)

发布时间:2024年01月19日
子控件Header.vue

<script>
    export default {
        name: "Header",
        methods:{
            toUser(){
                console.log('user')
            },
            toExit(){
                console.log('exit')
            },
            collapse(){ //传值方法
                this.$emit('doCollapse')
            }
        }
    }
</script>

父控件Index.vue

<template>
    <el-container style="height: 100%; border: 1px solid #eee">
        <el-aside width="200px" style="background-color: rgb(238, 241, 246);height: 100%;margin-left: -1px;" >
            <Aside :isCollapse="isCollapse"></Aside>
        </el-aside>

        <el-container style="height: 100%">
            <el-header style="text-align: right; font-size: 12px;border-bottom: rgba(169,169,169,0.3) 1px solid">
                <Header @doCollapse="doCollapse"></Header>
            </el-header>

            <el-main style="height: 100%">
                <Main></Main>
            </el-main>
        </el-container>
    </el-container>
</template>

<script>
    import Aside from "./Aside";
    import Header from "./Header";
    import Main from "./Main";
    export default {
        name: "Index",
        components: {Main, Header, Aside},
        data(){
            return{
                isCollapse:false
            }
        },
        methods:{
            doCollapse(){
                console.log('11')
                this.isCollapse=!this.isCollapse
            }
        }


    }
</script>

<style scoped>
    .el-header {
        /*background-color: #B3C0D1;*/
        color: #333;
        line-height: 60px;
    }
    .el-aside {
        color: #333;
    }
    .el-main {
        padding: 5px;
    }
</style>
文章来源:https://blog.csdn.net/gaojing694855420/article/details/135689963
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。