1. 项目结构与基础配置
在开始构建ElementPlus侧边栏折叠功能前,我们需要先搭建好项目的基础结构。这里推荐使用Vue3的组合式API写法,配合ElementPlus 2.3.0+版本。我实际开发中发现,很多新手容易忽略版本兼容性问题,建议在package.json中明确指定element-plus版本。
首先创建三个核心文件:
- Home.vue(布局容器)
- TAside.vue(侧边栏组件)
- TMain.vue(主内容区)
在Home.vue中,我们需要设置基本的布局结构。ElementPlus的el-container组件非常适合做管理后台的骨架,实测下来它的响应式表现很稳定。这里有个小技巧:el-container默认是flex布局,建议给它设置min-height: 100vh,这样能确保页面始终占满全屏。
javascript复制// Home.vue基础结构
<template>
<el-container class="layout-container">
<el-aside>
<TAside />
</el-aside>
<el-container>
<el-header><THeader /></el-header>
<el-main><TMain /></el-main>
</el-container>
</el-container>
</template>
<script setup>
import { provide, ref } from 'vue'
import TAside from './TAside.vue'
import TMain from './TMain.vue'
// 关键点:提供全局折叠状态
const isCollapse = ref(false)
provide('isCollapse', isCollapse)
</script>
<style scoped>
.layout-container {
min-height: 100vh;
}
</style>
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 侧边栏核心实现
2.1 el-menu的关键配置
侧边栏折叠功能的核心在于el-menu组件的正确配置
