From a56948aa37d447ab2de923f9110ba7c1aecfd85d Mon Sep 17 00:00:00 2001 From: kubbo <390378816@qq.com> Date: Sun, 29 Jan 2023 00:18:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E5=8F=96=E9=A1=B5=E9=9D=A2tab?= =?UTF-8?q?=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/components/navTabs.vue | 64 ++++++++++++++++++++++++++++++++++ web/src/utils/router.js | 3 +- web/src/utils/store.js | 9 ++++- web/src/views/appEntry.vue | 4 +-- web/src/views/home.vue | 28 ++++++--------- 5 files changed, 86 insertions(+), 22 deletions(-) create mode 100644 web/src/components/navTabs.vue diff --git a/web/src/components/navTabs.vue b/web/src/components/navTabs.vue new file mode 100644 index 0000000..71b2c2d --- /dev/null +++ b/web/src/components/navTabs.vue @@ -0,0 +1,64 @@ + + + + + \ No newline at end of file diff --git a/web/src/utils/router.js b/web/src/utils/router.js index 8a4d67c..74f1336 100644 --- a/web/src/utils/router.js +++ b/web/src/utils/router.js @@ -34,7 +34,8 @@ export default loadApps().then(() => createRouter({ if (to.name == "工作台") { next() } else if (getToken()) { - next({name: "工作台"}) + if (to.name == '登录') next({name: "工作台"}) + else next() } else if (to.name != '登录') { next({name: "登录"}) } else next() diff --git a/web/src/utils/store.js b/web/src/utils/store.js index 338bcfd..146e769 100644 --- a/web/src/utils/store.js +++ b/web/src/utils/store.js @@ -4,7 +4,8 @@ import http from "./axios"; export const mainStore = defineStore('main', { state: () => ({ user: {}, - token: "" + token: "", + pages: [] }), actions: { getToken(params) { @@ -23,6 +24,12 @@ export const mainStore = defineStore('main', { } }) }, + addPage(page) { + if (!this.pages.find(e => e.id == location.href)) this.pages.push({...page, id: location.href}) + }, + deletePage(i) { + this.pages.splice(i, 1) + }, logout() { this.user = {} this.token = "" diff --git a/web/src/views/appEntry.vue b/web/src/views/appEntry.vue index 5b4219c..e2ef8ee 100644 --- a/web/src/views/appEntry.vue +++ b/web/src/views/appEntry.vue @@ -1,5 +1,5 @@