From 349d1978b154f6e9e74e36de7cc56a2ca261d0b0 Mon Sep 17 00:00:00 2001 From: vben Date: Thu, 22 Oct 2020 00:14:11 +0800 Subject: [PATCH] fix: fix missing page refresh parameters --- src/components/Breadcrumb/Breadcrumb.vue | 2 +- src/components/Form/src/BasicForm.vue | 2 +- src/components/Menu/src/index.less | 4 +-- src/design/var/index.less | 2 +- src/hooks/web/useTabs.ts | 14 +++++++-- src/layouts/default/LayoutHeader.tsx | 14 +++------ .../actions/notice/NoticeActionItem.vue | 31 ++++++++++--------- src/layouts/default/index.less | 18 +++++++---- src/layouts/default/multitabs/index.less | 17 ++++++++++ src/layouts/default/multitabs/index.tsx | 14 ++++++++- src/settings/projectSetting.ts | 2 +- 11 files changed, 81 insertions(+), 39 deletions(-) diff --git a/src/components/Breadcrumb/Breadcrumb.vue b/src/components/Breadcrumb/Breadcrumb.vue index b37bd043..f57849fd 100644 --- a/src/components/Breadcrumb/Breadcrumb.vue +++ b/src/components/Breadcrumb/Breadcrumb.vue @@ -37,7 +37,7 @@ .breadcrumb { height: @header-height; padding-right: 20px; - font-size: 14px; + font-size: 12px; line-height: @header-height; // line-height: 1; diff --git a/src/components/Form/src/BasicForm.vue b/src/components/Form/src/BasicForm.vue index 41727c57..0288bd85 100644 --- a/src/components/Form/src/BasicForm.vue +++ b/src/components/Form/src/BasicForm.vue @@ -74,7 +74,7 @@ const getMergePropsRef = computed( (): FormProps => { - return deepMerge(props, unref(propsRef)); + return deepMerge(cloneDeep(props), unref(propsRef)); } ); // 获取表单基本配置 diff --git a/src/components/Menu/src/index.less b/src/components/Menu/src/index.less index 09c63c62..e6fcec7c 100644 --- a/src/components/Menu/src/index.less +++ b/src/components/Menu/src/index.less @@ -118,7 +118,7 @@ .ant-menu-submenu-open, .ant-menu-item-selected, .ant-menu-submenu-selected { - color: @white !important; + color: @primary-color !important; border-bottom: 3px solid @primary-color; } @@ -127,7 +127,7 @@ .ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open, .ant-menu-submenu-active, .ant-menu-submenu-title:hover { - color: @white !important; + color: @primary-color !important; border-bottom: 3px solid @primary-color; } diff --git a/src/design/var/index.less b/src/design/var/index.less index cc256f46..a9736c91 100644 --- a/src/design/var/index.less +++ b/src/design/var/index.less @@ -6,7 +6,7 @@ @multiple-height: 36px; // headers -@header-height: 42px; +@header-height: 36px; // logo width @logo-width: 40px; diff --git a/src/hooks/web/useTabs.ts b/src/hooks/web/useTabs.ts index 02e5a1e4..7199ec71 100644 --- a/src/hooks/web/useTabs.ts +++ b/src/hooks/web/useTabs.ts @@ -90,15 +90,25 @@ export function useTabs() { closeOther: () => canIUseFn() && closeOther(tabStore.getCurrentTab), closeCurrent: () => canIUseFn() && closeCurrent(tabStore.getCurrentTab), resetCache: () => canIUseFn() && resetCache(), - addTab: (path: PageEnum, goTo = false, replace = false) => { + addTab: ( + path: PageEnum | string, + goTo = false, + opt?: { replace?: boolean; query?: any; params?: any } + ) => { const to = getTo(path); if (!to) return; useTimeout(() => { tabStore.addTabByPathAction(); }, 0); + const { replace, query = {}, params = {} } = opt || {}; activeKeyRef.value = path; - goTo && replace ? router.replace : router.push(path); + const data = { + path, + query, + params, + }; + goTo && replace ? router.replace(data) : router.push(data); }, activeKeyRef, }; diff --git a/src/layouts/default/LayoutHeader.tsx b/src/layouts/default/LayoutHeader.tsx index dad20dcc..709cda28 100644 --- a/src/layouts/default/LayoutHeader.tsx +++ b/src/layouts/default/LayoutHeader.tsx @@ -20,7 +20,6 @@ import { GITHUB_URL } from '/@/settings/siteSetting'; import LockAction from './actions/LockActionItem'; import { useModal } from '/@/components/Modal/index'; import { errorStore } from '/@/store/modules/error'; -import { useGo } from '/@/hooks/web/usePage'; import { useWindowSizeFn } from '/@/hooks/event/useWindowSize'; import NoticeAction from './actions/notice/NoticeActionItem.vue'; @@ -28,11 +27,10 @@ export default defineComponent({ name: 'DefaultLayoutHeader', setup() { const widthRef = ref(200); - const { refreshPage } = useTabs(); + const { refreshPage, addTab } = useTabs(); const [register, { openModal }] = useModal(); const { toggleFullscreen, isFullscreenRef } = useFullscreen(); - const go = useGo(); const getProjectConfigRef = computed(() => { return appStore.getProjectConfig; }); @@ -72,7 +70,7 @@ export default defineComponent({ function handleToErrorList() { errorStore.commitErrorListCountState(0); - go('/exception/error-log'); + addTab('/exception/error-log', true); } /** @@ -175,12 +173,8 @@ export default defineComponent({
{{ - title: () => '消息中心', - default: () => ( -
- -
- ), + title: () => '消息通知', + default: () => , }}
diff --git a/src/layouts/default/actions/notice/NoticeActionItem.vue b/src/layouts/default/actions/notice/NoticeActionItem.vue index 03bdc33c..52b0a498 100644 --- a/src/layouts/default/actions/notice/NoticeActionItem.vue +++ b/src/layouts/default/actions/notice/NoticeActionItem.vue @@ -1,5 +1,5 @@