Springboot项目下面、在html 页面 Vue3 + ElementPlus 搭建侧边栏首页
1、效果图
2、static 文件下面的项目结构
3、代码实现
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>首页</title>
<link rel="stylesheet" href="//unpkg.com/element-plus/dist/index.css" />
<script src="//unpkg.com/vue@3"></script>
<script src="//unpkg.com/element-plus"></script>
<script src="//unpkg.com/@element-plus/icons-vue"></script>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
.el-header {
background-color: rgb(204, 212, 255);
display: flex;
justify-content: space-between;
align-items: center;
padding: 10px 20px;
}
.el-aside {
background-color: rgb(217, 236, 255);
height: 90vh;
}
.el-main {
background-color: rgb(236, 245, 255);
}
.header-content {
display: flex;
align-items: center;
}
.header-content span {
font-size: 16px;
margin-right: 20px;
}
.header-content el-link {
font-size: 16px;
}
</style>
</head>
<body>
<div id="app" class="common-layout">
<el-container>
<el-header>
<h2 style="text-align: center">未来智慧社区管理系统</h2>
<div class="header-content">
<span>欢迎您,admin </span>
</div>
</el-header>
<el-container>
<el-aside width="200px">
<el-menu
default-active="2"
class="el-menu-vertical-demo">
<el-sub-menu index="1">
<template #title>
<el-icon>
<location/>
</el-icon>
<span>物业系统</span>
</template>
<el-menu-item>
<el-link index="1-1" href="/pages/house.html" target="mainFrame">
房屋管理</el-link>
</el-menu-item>
<el-menu-item>
<el-link href="/pages/owner.html" target="mainFrame">业主管理</el-link>
</el-menu-item>
<el-menu-item>
<el-link index="1-2" href="/pages/building.html" target="mainFrame">
楼栋管理</el-link>
</el-menu-item>
<el-menu-item>
<el-link index="1-3" href="/pages/parking.html" target="mainFrame">
车位管理</el-link>
</el-menu-item>
</el-sub-menu>
<el-sub-menu index="2">
<template #title>
<el-icon><Setting /></el-icon>
<span>系统管理</span>
</template>
<el-menu-item>
<el-link index="2-1" href="/pages/xxx.html" target="mainFrame">
用户管理</el-link>
</el-menu-item>
<el-menu-item>
<el-link index="2-2" href="/pages/xxx.html" target="mainFrame">
业主管理</el-link>
</el-menu-item>
<el-menu-item>
<el-link index="2-3" href="/pages/xxx.html" target="mainFrame">
用户中心</el-link>
</el-menu-item>
</el-sub-menu>
</el-menu>
</el-aside>
<el-main>
<iframe id="mainFrame" name="mainFrame" src="/pages/owner.html"
style="width:100%; height:100%; border:none"></iframe>
</el-main>
</el-container>
</el-container>
</div>
<script>
const { createApp } = Vue
const app = createApp({
setup(){
return {
}
}
});
app.use(ElementPlus)
for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
app.component(key, component)
}
app.mount('#app')
</script>
</body>
</html>