Unverified 提交 554f4615 作者: You 提交者: GitHub

fix: 菜单响应式隐藏时宽度计算错误 (#1945)

Co-authored-by: zeozhou <zeozhou@tencent.com>
上级 d21578ab
...@@ -101,8 +101,12 @@ export function useMenuSetting() { ...@@ -101,8 +101,12 @@ export function useMenuSetting() {
}); });
const getMiniWidthNumber = computed(() => { const getMiniWidthNumber = computed(() => {
const { collapsedShowTitle } = appStore.getMenuSetting; const { collapsedShowTitle, siderHidden } = appStore.getMenuSetting;
return collapsedShowTitle ? SIDE_BAR_SHOW_TIT_MINI_WIDTH : SIDE_BAR_MINI_WIDTH; return siderHidden
? 0
: collapsedShowTitle
? SIDE_BAR_SHOW_TIT_MINI_WIDTH
: SIDE_BAR_MINI_WIDTH;
}); });
const getCalcContentWidth = computed(() => { const getCalcContentWidth = computed(() => {
......
import type { Ref } from 'vue'; import type { Ref } from 'vue';
import { computed, unref, onMounted, nextTick, ref } from 'vue'; import { computed, unref, onMounted, nextTick } from 'vue';
import { TriggerEnum } from '/@/enums/menuEnum'; import { TriggerEnum } from '/@/enums/menuEnum';
import { useMenuSetting } from '/@/hooks/setting/useMenuSetting'; import { useMenuSetting } from '/@/hooks/setting/useMenuSetting';
import { useDebounceFn } from '@vueuse/core'; import { useDebounceFn } from '@vueuse/core';
import { useAppStore } from '/@/store/modules/app';
/** /**
* Handle related operations of menu events * Handle related operations of menu events
*/ */
export function useSiderEvent() { export function useSiderEvent() {
const brokenRef = ref(false); const appStore = useAppStore();
const { getMiniWidthNumber } = useMenuSetting(); const { getMiniWidthNumber } = useMenuSetting();
const getCollapsedWidth = computed(() => { const getCollapsedWidth = computed(() => {
return unref(brokenRef) ? 0 : unref(getMiniWidthNumber); return unref(getMiniWidthNumber);
}); });
function onBreakpointChange(broken: boolean) { function onBreakpointChange(broken: boolean) {
brokenRef.value = broken; appStore.setProjectConfig({
menuSetting: {
siderHidden: broken,
},
});
} }
return { getCollapsedWidth, onBreakpointChange }; return { getCollapsedWidth, onBreakpointChange };
......
...@@ -83,6 +83,8 @@ const setting: ProjectConfig = { ...@@ -83,6 +83,8 @@ const setting: ProjectConfig = {
fixed: true, fixed: true,
// Menu collapse // Menu collapse
collapsed: false, collapsed: false,
// When sider hide because of the responsive layout
siderHidden: false,
// Whether to display the menu name when folding the menu // Whether to display the menu name when folding the menu
collapsedShowTitle: false, collapsedShowTitle: false,
// Whether it can be dragged // Whether it can be dragged
......
...@@ -16,6 +16,7 @@ export interface MenuSetting { ...@@ -16,6 +16,7 @@ export interface MenuSetting {
bgColor: string; bgColor: string;
fixed: boolean; fixed: boolean;
collapsed: boolean; collapsed: boolean;
siderHidden: boolean;
canDrag: boolean; canDrag: boolean;
show: boolean; show: boolean;
hidden: boolean; hidden: boolean;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论