|
@@ -0,0 +1,216 @@
|
|
|
+<template>
|
|
|
+ <div class="layout">
|
|
|
+ <el-container>
|
|
|
+ <el-header style="height: 180px; background-color: #438EB9">
|
|
|
+ <h1 class="font-h1">浙江省数字畜牧应用系统养殖管理模块</h1>
|
|
|
+ <div class="menu">
|
|
|
+ <div class="menu-item">
|
|
|
+ <div class="item_box" v-for="item in menuList" :key="item.id" @click="jump(item.id)">
|
|
|
+ <img :src="item.img" alt="" style="height: 50px">
|
|
|
+ <div :class="['line', navIndex === item.id ? 'active' : '']">{{item.name}}</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-header>
|
|
|
+ <el-container style="height: calc(100vh - 180px);">
|
|
|
+ <el-aside width="230px" style="background-color: #EAEDF1">
|
|
|
+ <sideMenu :navIndex="navIndex" :defaultUrl="defaultUrl" :menuItem="menuItem"></sideMenu>
|
|
|
+ </el-aside>
|
|
|
+ <el-main style="background-color: #F9F9F9">
|
|
|
+ <div class="header_title">{{title}}</div>
|
|
|
+ <div class="overY">
|
|
|
+ <router-view></router-view>
|
|
|
+ </div>
|
|
|
+ </el-main>
|
|
|
+ </el-container>
|
|
|
+ </el-container>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import sideMenu from "../components/sideMenu";
|
|
|
+export default {
|
|
|
+ name: "MainLayout",
|
|
|
+ components: {
|
|
|
+ sideMenu
|
|
|
+ },
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ menuList: [
|
|
|
+ {
|
|
|
+ id: 1,
|
|
|
+ img: require('../assets/u19.png'),
|
|
|
+ name: '数据'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 2,
|
|
|
+ img: require('../assets/u20.png'),
|
|
|
+ name: '汇总数据'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 3,
|
|
|
+ img: require('../assets/u18.png'),
|
|
|
+ name: '设备管理'
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ menuItem: [
|
|
|
+ {
|
|
|
+ id: '1',
|
|
|
+ name: '数据',
|
|
|
+ parentId: 1,
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ id: "10",
|
|
|
+ name: '牧场概况',
|
|
|
+ url: '/'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: "20",
|
|
|
+ name: '存栏走势',
|
|
|
+ url: '/hand'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: '30',
|
|
|
+ name: '每日数据',
|
|
|
+ url: '/dayData'
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: '2',
|
|
|
+ name: '汇总数据',
|
|
|
+ parentId: 2,
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ id: '21',
|
|
|
+ name: '汇总数据',
|
|
|
+ url: '/collectData'
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: '3',
|
|
|
+ name: '设备管理',
|
|
|
+ parentId: 3,
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ id: '31',
|
|
|
+ name: '设备管理',
|
|
|
+ url: '/deviceAdmin'
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ navIndex: 1,
|
|
|
+ title: '',
|
|
|
+ defaultUrl: '',
|
|
|
+ }
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ $route(newVal) {
|
|
|
+ this.title = newVal.meta.title;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ jump(id){
|
|
|
+ this.navIndex = id;
|
|
|
+ this.$router.push(this.menuItem[id - 1].children[0].url);
|
|
|
+ this.defaultUrl = this.menuItem[id - 1].children[0].url;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ console.log(this.$route);
|
|
|
+ this.title = this.$route.meta.title;
|
|
|
+ this.defaultUrl = this.$route.path;
|
|
|
+ }
|
|
|
+}
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped>
|
|
|
+ /deep/.el-header {
|
|
|
+ padding: 0;
|
|
|
+ }
|
|
|
+ /deep/.el-main {
|
|
|
+ padding: 0;
|
|
|
+ }
|
|
|
+ .layout {
|
|
|
+ width: 100%;
|
|
|
+ height: 100vh;
|
|
|
+ overflow: hidden;
|
|
|
+ }
|
|
|
+ .font-h1 {
|
|
|
+ font-size: 36px;
|
|
|
+ padding-left: 200px;
|
|
|
+ background-image:-webkit-linear-gradient(bottom,#A0ADB6, #F1F3F4);
|
|
|
+ -webkit-background-clip:text;
|
|
|
+ -webkit-text-fill-color:transparent;
|
|
|
+ margin: 20px auto;
|
|
|
+ }
|
|
|
+ .menu {
|
|
|
+ width: 100%;
|
|
|
+ height: 93px;
|
|
|
+ background-image: url('../assets/u3.svg');
|
|
|
+ background-size: 100% 100%;
|
|
|
+ }
|
|
|
+ .menu-item {
|
|
|
+ width: 800px;
|
|
|
+ height: 100%;
|
|
|
+ margin: 0 auto;
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ }
|
|
|
+ .item_box {
|
|
|
+ width: 150px;
|
|
|
+ height: 100%;
|
|
|
+ text-align: center;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
+ .item_box:hover .line {
|
|
|
+ background-color: #4098CA;
|
|
|
+ color: white;
|
|
|
+ }
|
|
|
+ .line {
|
|
|
+ line-height: 30px;
|
|
|
+ color: #4098CA;
|
|
|
+ }
|
|
|
+ .active {
|
|
|
+ background-color: #4098CA;
|
|
|
+ color: white;
|
|
|
+ }
|
|
|
+ .header_title {
|
|
|
+ height: 50px;
|
|
|
+ background-color: #F3F3F3;
|
|
|
+ border-bottom: 1px solid #ddd;
|
|
|
+ border-top: 1px solid #ddd;
|
|
|
+ }
|
|
|
+ .overY {
|
|
|
+ height: calc(100vh - 180px - 52px);
|
|
|
+ overflow-y: scroll;
|
|
|
+ }
|
|
|
+ .overY::-webkit-scrollbar {
|
|
|
+ /*滚动条整体样式*/
|
|
|
+ width: 5px; /*高宽分别对应横竖滚动条的尺寸*/
|
|
|
+ height: 1px;
|
|
|
+ }
|
|
|
+ .overY::-webkit-scrollbar-thumb {
|
|
|
+ /*滚动条里面小方块*/
|
|
|
+ border-radius: 8px;
|
|
|
+ background-color: #535353;
|
|
|
+ background-image: -webkit-linear-gradient(
|
|
|
+ 45deg,
|
|
|
+ rgba(255, 255, 255, 0.2) 25%,
|
|
|
+ transparent 25%,
|
|
|
+ transparent 50%,
|
|
|
+ rgba(255, 255, 255, 0.2) 50%,
|
|
|
+ rgba(255, 255, 255, 0.2) 75%,
|
|
|
+ transparent 75%,
|
|
|
+ transparent
|
|
|
+ );
|
|
|
+ }
|
|
|
+ .overY::-webkit-scrollbar-track {
|
|
|
+ /*滚动条里面轨道*/
|
|
|
+ box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
|
|
|
+ /*background : #ededed;*/
|
|
|
+ border-radius: 10px;
|
|
|
+ }
|
|
|
+</style>
|