1
0
Code Issues Pull Requests Packages Projects Releases Wiki Activity GitHub Gitee

后台面板SiderBar和TopBar

This commit is contained in:
程序员小墨 2022-10-22 13:52:22 +08:00
parent 64de405175
commit 821a142bf8
7 changed files with 129 additions and 20 deletions

View File

@ -1,33 +1,60 @@
<template> <template>
<el-container class="container">
<el-header>
<TopBar />
</el-header>
<el-container>
<el-aside width="200px">
<SideBar class="sidebar" />
</el-aside>
<el-main>
<el-radio-group v-model="isCollapse" style="margin-bottom: 20px">
<el-radio-button @click="toggleSideBar">expand</el-radio-button>
</el-radio-group>
</el-main>
</el-container>
</el-container>
<!--
<img src="./assets/logo.png"> <img src="./assets/logo.png">
<nav> <nav>
<router-link to="/">Home</router-link> | <router-link to="/">Home</router-link> |
<router-link to="/about">About</router-link> <router-link to="/about">About</router-link>
</nav> </nav>
<router-view /> <router-view />
-->
</template> </template>
<script> <script>
// import { ElConfigProvider } from 'element-plus' // @ is an alias to /src
// import { zhCn } from 'element-plus/es/locale'; import SideBar from '@/components/SideBar.vue'
import TopBar from './components/TopBar.vue'
export default { export default {
name: 'App', name: 'App',
components: { components: {
// ElConfigProvider, SideBar,
TopBar
} }
// setup() {
// return {
// locale: zhCn,
// }
// }
} }
</script> </script>
<style> <style>
@import 'normalize.css/normalize.css'; @import 'normalize.css/normalize.css';
html,
body,
#app,
.container {
height: 100%;
}
#app { #app {
text-align: center; text-align: center;
} }
.el-header {
padding: 0;
border: 0;
}
</style> </style>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.7 KiB

View File

@ -2,11 +2,8 @@
<div class="hello"> <div class="hello">
<h1>{{ msg }}</h1> <h1>{{ msg }}</h1>
<p> <p>
For a guide and recipes on how to configure / customize this project,<br> some message ...
check out the
<a href="https://cli.vuejs.org" target="_blank" rel="noopener">vue-cli documentation</a>.
</p> </p>
<h3>Installed CLI Plugins</h3>
</div> </div>
</template> </template>

View File

@ -0,0 +1,63 @@
<template>
<el-menu active-text-color="#ffd04b" background-color="#151513" class="el-menu-vertical" default-active="2"
text-color="#fff" :collapse="isCollapse" @open="handleOpen" @close="handleClose">
<el-sub-menu index="1">
<template #title>
<el-icon>
<Location />
</el-icon>
<span>Navigator One</span>
</template>
<el-menu-item-group title="Group One">
<el-menu-item index="1-1">item one</el-menu-item>
<el-menu-item index="1-2">item two</el-menu-item>
</el-menu-item-group>
<el-menu-item-group title="Group Two">
<el-menu-item index="1-3">item three</el-menu-item>
</el-menu-item-group>
<el-sub-menu index="1-4">
<template #title>item four</template>
<el-menu-item index="1-4-1">item one</el-menu-item>
</el-sub-menu>
</el-sub-menu>
<el-menu-item index="2">
<el-icon>
<IconMenu />
</el-icon>
<span>Navigator Two</span>
</el-menu-item>
<el-menu-item index="3" disabled>
<el-icon>
<Document />
</el-icon>
<span>Navigator Three</span>
</el-menu-item>
<el-menu-item index="4">
<el-icon>
<setting />
</el-icon>
<span>Navigator Four</span>
</el-menu-item>
</el-menu>
</template>
<script setup>
import { Location, Menu as IconMenu, Document, Setting } from '@element-plus/icons-vue'
// import { ref } from 'vue'
const isCollapse = false
// const isCollapse = ref(true)
const handleOpen = (key, keyPath) => {
console.log(key, keyPath)
}
const handleClose = (key, keyPath) => {
console.log(key, keyPath)
}
</script>
<style scoped>
.el-menu-vertical {
height: 100%;
border: 0;
}
</style>

View File

@ -0,0 +1,30 @@
<template>
<el-menu class="el-menu" mode="horizontal" background-color="#f49e00" text-color="#fff" active-text-color="#ffd04b">
<el-menu-item index="1">Processing Center</el-menu-item>
<el-sub-menu index="2">
<template #title>Workspace</template>
<el-menu-item index="2-1">item one</el-menu-item>
<el-menu-item index="2-2">item two</el-menu-item>
<el-menu-item index="2-3">item three</el-menu-item>
<el-sub-menu index="2-4">
<template #title>item four</template>
<el-menu-item index="2-4-1">item one</el-menu-item>
<el-menu-item index="2-4-2">item two</el-menu-item>
<el-menu-item index="2-4-3">item three</el-menu-item>
</el-sub-menu>
</el-sub-menu>
<el-menu-item index="3" disabled>Info</el-menu-item>
<el-menu-item index="4">Orders</el-menu-item>
</el-menu>
</template>
<script>
</script>
<style scoped>
.el-menu {
width: 100%;
border: 0;
height: 100%;
}
</style>

View File

@ -1,8 +1,6 @@
import { createApp } from 'vue' import { createApp } from 'vue'
import App from './App.vue' import App from './App.vue'
import router from './router' import router from './router'
// import installElementPlus from './plugins/element'
const app = createApp(App) const app = createApp(App)
// installElementPlus(app)
app.use(router).mount('#app') app.use(router).mount('#app')

View File

@ -1,6 +0,0 @@
import { ElButton } from 'element-plus'
import lang from 'element-plus/lib/locale/lang/zh-cn'
export default (app) => {
app.use(ElButton, { lang })
}