From c3a74cb8a2bbd6dd0bd507e5769b3ddd75b74bbb Mon Sep 17 00:00:00 2001 From: kimi <kimi42345@gmail.com> Date: 星期日, 19 一月 2020 13:03:01 +0800 Subject: [PATCH] Merge branch 'master' of http://highdatas.com:9000/r/~kimi/srs --- .eslintrc.js | 2 src/views/Home.vue | 146 +++++++++++++++++----------- src/router/index.ts | 106 ++++++++++++++++---- src/App.vue | 9 - src/main.ts | 26 +++++ 5 files changed, 202 insertions(+), 87 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index 5ebbaed..ec339d1 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -3,7 +3,7 @@ env: { node: true }, - extends: ["plugin:vue/essential", "@vue/typescript"], + extends: ["plugin:vue/essential", "@vue/typescript"], rules: { "no-console": process.env.NODE_ENV === "production" ? "error" : "off", "no-debugger": process.env.NODE_ENV === "production" ? "error" : "off" diff --git a/src/App.vue b/src/App.vue index 2e363d0..c825eb6 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,17 +1,16 @@ <template> <div id="app"> - - <home /> + <router-view name="app"></router-view> </div> </template> <script> - import Home from "./views/Home.vue"; +// import Home from "./views/Home.vue"; export default { name :"app", - components:{ + /* components:{ Home - } + } */ }; </script> <style lang="stylus"> diff --git a/src/main.ts b/src/main.ts index b3db049..e7612ac 100644 --- a/src/main.ts +++ b/src/main.ts @@ -7,10 +7,15 @@ import store from "./store"; import ElementUI from "element-ui"; import "element-ui/lib/theme-chalk/index.css"; +import Axios from 'axios'; + Vue.use(ElementUI); Vue.config.productionTip = false; +Vue.prototype.$axios = Axios; +Axios.defaults.baseURL = '/api'; +Axios.defaults.headers.post['Content-Type'] = 'application/json'; Vue.prototype.axios = axios; @@ -19,3 +24,24 @@ store, render: h => h(App) }).$mount("#app"); + +//鏃ユ湡鏍煎紡鍖� +Date.prototype.Format = function(fmt){ + var o = { + "M+": this.getMonth() + 1, + "d+": this.getDate(), + "H+": this.getHours(), + "m+": this.getMinutes(), + "s+": this.getSeconds(), + "S+": this.getMilliseconds() + }; + if(/(y+)/.test(fmt)){ + fmt=fmt.replace(RegExp.$1,(this.getFullYear()+"").substr(4-RegExp.$1.length)); + } + for(var k in o){ + if (new RegExp("(" + k +")").test(fmt)){ + fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(String(o[k]).length))); + } + } + return fmt; +}; diff --git a/src/router/index.ts b/src/router/index.ts index dba62d0..8e20b2c 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -1,36 +1,94 @@ import Vue from "vue"; import VueRouter from "vue-router"; +import login from "../views/login.vue"; import Home from "../views/Home.vue"; import Mine from "../views/Mine.vue"; import Project from "../views/Project.vue"; -import square from "../components/square.vue"; +import Overview from "../views/Overview.vue"; +import calendarTask from "../views/calendarTask.vue"; Vue.use(VueRouter); const routes = [ - - { - path: "/mine", - name: "mine", - component:Mine - },{ - path: "/square", - name: "square", - component:square - },{ - path: "/project", - name: "project", - component:Project - }, - { - path: "/about", - name: "about", - // route level code-splitting - // this generates a separate chunk (about.[hash].js) for this route - // which is lazy-loaded when the route is visited. - component: () => - import(/* webpackChunkName: "about" */ "../views/About.vue") - } + { + path: "/login", + name: "login", + components:{ + app: login + } + }, + { + path: "/", + name: "Home", + components:{ + app: Home + }, + children: [ + { + path: "mine", + name: "mine", + components:{ + home: Mine + } + },{ + path: "project", + name: "project", + components:{ + home: Project + } + }, + { + path: "Overview", + name: "Overview", + components:{ + home: Overview + } + }, + { + path: "calendarTask", + name: "calendarTask", + components:{ + home: calendarTask + } + }, + { + path: "project2", + name: "project2", + components:{ + home: Project + } + }, + { + path: "project3", + name: "project3", + components:{ + home: Project + } + }, + { + path: "project4", + name: "project4", + components:{ + home: Project + } + }, + { + path: "project5", + name: "project5", + components:{ + home: Project + } + }, + { + path: "project6", + name: "project6", + components:{ + home: Project + } + } + ] + }, + ]; const router = new VueRouter({ diff --git a/src/views/Home.vue b/src/views/Home.vue index 645a598..625d1eb 100644 --- a/src/views/Home.vue +++ b/src/views/Home.vue @@ -1,87 +1,119 @@ <template> - <div style="margin: 0;"> + <div style="100%;height: 100%;margin: 0;"> <el-container style="height: 100vh; box-sizing: border-box;"> - <el-aside width="200px" style="background-color: rgb(238, 241, 246); "> - <div style="width: 100%;height: 60px;"></div> - <el-menu default-active="1" @select="handleSelect"> - <el-menu-item index="0"> - <i class="el-icon-menu"></i> - <span slot="title">棣栭〉</span> - </el-menu-item> + <div style="width: 100%;height: 60px;"></div> + <el-menu + :default-openeds="defaultActive" + class="el-menu-vertical-demo" + :unique-opened="false" + @select ="menuSelect" + @open ="menuSelect" + @close ="menuSelect" + active-text-color="#409EFF" + > + <navigationItem v-for="menu in navList" :key="menu.path" :item="menu" /> + </el-menu> - - <el-submenu index="1"> - <template slot="title"> - <i class="el-icon-menu"></i> - <span>椤圭洰绠$悊</span> - </template> - <el-menu-item-group> - <el-menu-item index="1-1">淇℃伅骞垮満</el-menu-item> - <el-menu-item index="1-2">椤圭洰鎬昏</el-menu-item> - <el-menu-item index="1-3">椤圭洰鍒嗘瀽</el-menu-item> - <el-menu-item index="1-4">褰掓。鎶ュ憡</el-menu-item> - </el-menu-item-group> - - </el-submenu> - <el-menu-item index="2"> - <i class="el-icon-menu"></i> - <span slot="title">浠诲姟绠$悊</span> - </el-menu-item> - - - </el-menu> + <!-- <el-menu default-active="1" @select="handleSelect"> + <el-menu-item index="0"> + <i class="el-icon-menu"></i> + <span slot="title">棣栭〉</span> + </el-menu-item> + <el-submenu index="1"> + <template slot="title"> + <i class="el-icon-menu"></i> + <span>椤圭洰绠$悊</span> + </template> + <el-menu-item-group> + <el-menu-item index="1-1">淇℃伅骞垮満</el-menu-item> + <el-menu-item index="1-2">椤圭洰鎬昏</el-menu-item> + <el-menu-item index="1-3">椤圭洰鍒嗘瀽</el-menu-item> + <el-menu-item index="1-4">褰掓。鎶ュ憡</el-menu-item> + </el-menu-item-group> + </el-submenu> + <el-menu-item index="2"> + <i class="el-icon-menu"></i> + <span slot="title">浠诲姟绠$悊</span> + </el-menu-item> + </el-menu> --> </el-aside> <el-container> - - <el-header style="text-align: right; font-size: 15px;padding-right: 40px;"> - <i class="el-icon-user-solid"></i> - <span>admin</span> + <i class="el-icon-user-solid"></i> + <span>admin</span> </el-header> - <el-main> - <router-view></router-view> + <el-main style="background-color: #f7f8f9;"> + <router-view name="home"></router-view> </el-main> </el-container> </el-container> </div> - </template> - - <script> - +import navigationItem from '../components/menu/navigationItem.vue' export default { + components: { + navigationItem + }, data() { return { breadcrumbItems:[], + defaultActive: [], + navList:[ + { + title:"棣栭〉", path:"mine",children:[] + }, + { + title:"椤圭洰绠$悊", path:"0_1",children:[ + {title:"淇℃伅骞垮満", path:"project2",children:[]}, + {title:"椤圭洰鎬昏", path:"Overview",children:[]}, + {title:"椤圭洰鍒嗘瀽", path:"project3",children:[]}, + {title:"褰掓。鎶ュ憡", path:"project4",children:[]}, + ] + }, + { + title:"浠诲姟绠$悊", path:"0_2",children:[ + {title:"浠诲姟鍒楄〃", path:"calendarTask",children:[]}, + ] + } + ], } }, + created() { + let userId_ = localStorage.getItem('userId'); + if (!userId_) { + this.$router.push('/login'); + } + }, + methods: { - handleSelect(key, keyPath){ - switch(key){ - case '0': + menuSelect(index, a){ + let isPage = index.substring(0,2); + if (isPage != "0_") { + this.$router.push('/'+ index); + } + }, + + /* handleSelect(key, keyPath){ + switch(key){ + case '0': this.$router.push('/mine'); this.breadcrumbItems = ["棣栭〉"]; - break; - case '1-1': - this.$router.push('/square'); - this.breadcrumbItems = ["骞垮満"]; - break; - case '2': - this.$router.push('/project') - this.breadcrumbItems = ["棣栭〉"]; - break; - case '3': - this.$router.push('/Page3') - - break; - } - }, + break; + case '2': + this.$router.push('/project') + this.breadcrumbItems = ["棣栭〉"]; + break; + case '3': + this.$router.push('/Page3') + break; + } + }, */ } }; -- Gitblit v1.8.0