From 8f48604956d6a4c656f090a483412fdf37e6e9a1 Mon Sep 17 00:00:00 2001 From: "zhigang.li" Date: Fri, 4 Jan 2019 14:46:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=82=B9=E5=87=BB=E5=85=B3?= =?UTF-8?q?=E9=97=AD=E6=89=80=E4=BB=A5=E6=8A=A5=E9=94=99=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/components/tags-nav/tags-nav.vue | 2 +- src/components/main/main.vue | 19 ++++++++++--------- src/libs/util.js | 10 +++++----- src/store/module/app.js | 11 +---------- src/view/components/org-tree/index.vue | 1 - 5 files changed, 17 insertions(+), 26 deletions(-) diff --git a/src/components/main/components/tags-nav/tags-nav.vue b/src/components/main/components/tags-nav/tags-nav.vue index 6381ed93..2dbca44a 100644 --- a/src/components/main/components/tags-nav/tags-nav.vue +++ b/src/components/main/components/tags-nav/tags-nav.vue @@ -34,7 +34,7 @@ :key="`tag-nav-${index}`" :name="item.name" :data-route-item="item" - @on-close="close(item)" + @on-close="handleClose(item)" @click.native="handleClick(item)" :closable="item.name !== $config.homeName" :color="isCurrentTag(item) ? 'primary' : 'default'" diff --git a/src/components/main/main.vue b/src/components/main/main.vue index 006da227..705c0040 100644 --- a/src/components/main/main.vue +++ b/src/components/main/main.vue @@ -44,7 +44,7 @@ import Fullscreen from './components/fullscreen' import Language from './components/language' import ErrorStore from './components/error-store' import { mapMutations, mapActions, mapGetters } from 'vuex' -import { getNewTagList, getNextRoute, routeEqual } from '@/libs/util' +import { getNewTagList, routeEqual } from '@/libs/util' import routers from '@/router/routers' import minLogo from '@/assets/images/logo-min.jpg' import maxLogo from '@/assets/images/logo.jpg' @@ -83,7 +83,8 @@ export default { return this.$store.state.user.avatorImgPath }, cacheList () { - return ['ParentView', ...this.tagNavList.length ? this.tagNavList.filter(item => !(item.meta && item.meta.notCache)).map(item => item.name) : []] + const list = ['ParentView', ...this.tagNavList.length ? this.tagNavList.filter(item => !(item.meta && item.meta.notCache)).map(item => item.name) : []] + return list }, menuList () { return this.$store.getters.menuList @@ -133,15 +134,15 @@ export default { this.collapsed = state }, handleCloseTag (res, type, route) { - if (type === 'all') { - this.turnToPage(this.$config.homeName) - } else if (routeEqual(this.$route, route)) { - if (type !== 'others') { - const nextRoute = getNextRoute(this.tagNavList, route) - this.$router.push(nextRoute) + if (type !== 'others') { + if (type === 'all') { + this.turnToPage(this.$config.homeName) + } else { + if (routeEqual(this.$route, route)) { + this.closeTag(route) + } } } - this.closeTag(route) this.setTagNavList(res) }, handleClick (item) { diff --git a/src/libs/util.js b/src/libs/util.js index 1457b201..b7460aef 100644 --- a/src/libs/util.js +++ b/src/libs/util.js @@ -7,7 +7,7 @@ const { title, cookieExpires, useI18n } = config export const TOKEN_KEY = 'token' export const setToken = (token) => { - Cookies.set(TOKEN_KEY, token, {expires: cookieExpires || 1}) + Cookies.set(TOKEN_KEY, token, { expires: cookieExpires || 1 }) } export const getToken = () => { @@ -60,7 +60,7 @@ export const getBreadCrumbList = (route, homeRoute) => { let res = routeMetched.filter(item => { return item.meta === undefined || !item.meta.hideInBread }).map(item => { - let meta = {...item.meta} + let meta = { ...item.meta } if (meta.title && typeof meta.title === 'function') { meta.__titleIsFunction__ = true meta.title = meta.title(route) @@ -75,12 +75,12 @@ export const getBreadCrumbList = (route, homeRoute) => { res = res.filter(item => { return !item.meta.hideInMenu }) - return [{...homeItem, to: homeRoute.path}, ...res] + return [{ ...homeItem, to: homeRoute.path }, ...res] } export const getRouteTitleHandled = (route) => { - let router = {...route} - let meta = {...route.meta} + let router = { ...route } + let meta = { ...route.meta } let title = '' if (meta.title) { if (typeof meta.title === 'function') { diff --git a/src/store/module/app.js b/src/store/module/app.js index 227c42e0..d4b87724 100644 --- a/src/store/module/app.js +++ b/src/store/module/app.js @@ -11,7 +11,6 @@ import { localSave, localRead } from '@/libs/util' -import beforeClose from '@/router/before-close' import { saveErrorLogger } from '@/api/data' import router from '@/router' import routers from '@/router/routers' @@ -64,15 +63,7 @@ export default { let tag = state.tagNavList.filter(item => routeEqual(item, route)) route = tag[0] ? tag[0] : null if (!route) return - if (route.meta && route.meta.beforeCloseName && route.meta.beforeCloseName in beforeClose) { - new Promise(beforeClose[route.meta.beforeCloseName]).then(close => { - if (close) { - closePage(state, route) - } - }) - } else { - closePage(state, route) - } + closePage(state, route) }, addTag (state, { route, type = 'unshift' }) { let router = getRouteTitleHandled(route) diff --git a/src/view/components/org-tree/index.vue b/src/view/components/org-tree/index.vue index 8e6c61a4..15a766a7 100644 --- a/src/view/components/org-tree/index.vue +++ b/src/view/components/org-tree/index.vue @@ -54,7 +54,6 @@ export default { return data }, handleMenuClick ({ data, key }) { - console.log(data, key) this.$Message.success({ duration: 5, content: `点击了《${data.label}》节点的'${menuDic[key]}'菜单`