mirror of
https://github.com/vbenjs/vue-vben-admin.git
synced 2025-08-25 16:16:20 +08:00
fix(layout): 修复切换导航栏模式,分割菜单的状态不同步,导致页面内容区域存在被遮挡的问题 (#3519)
Co-authored-by: chengmingrui <chengmingrui@oneaiops.com>
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import { MenuTypeEnum } from '@/enums/menuEnum';
|
||||
import { HandlerEnum } from './enum';
|
||||
import { updateHeaderBgColor, updateSidebarBgColor } from '@/logics/theme/updateBackground';
|
||||
import { updateColorWeak } from '@/logics/theme/updateColorWeak';
|
||||
@@ -7,6 +8,7 @@ import { useAppStore } from '@/store/modules/app';
|
||||
import { ProjectConfig } from '#/config';
|
||||
import { updateDarkTheme } from '@/logics/theme/dark';
|
||||
import { useRootSetting } from '@/hooks/setting/useRootSetting';
|
||||
import projectSetting from '@/settings/projectSetting';
|
||||
|
||||
export function baseHandler(event: HandlerEnum, value: any) {
|
||||
const appStore = useAppStore();
|
||||
@@ -22,10 +24,15 @@ export function handler(event: HandlerEnum, value: any): DeepPartial<ProjectConf
|
||||
const appStore = useAppStore();
|
||||
|
||||
const { getThemeColor, getDarkMode } = useRootSetting();
|
||||
const { menuSetting } = projectSetting;
|
||||
switch (event) {
|
||||
case HandlerEnum.CHANGE_LAYOUT:
|
||||
const { mode, type, split } = value;
|
||||
const splitOpt = split === undefined ? { split } : {};
|
||||
const isMixSidebar = type === MenuTypeEnum.MIX;
|
||||
const mixSideSplitOpt =
|
||||
menuSetting.type === MenuTypeEnum.MIX ? { split: menuSetting.split } : { split };
|
||||
const otherSplitOpt = { split: false };
|
||||
const splitOpt = isMixSidebar ? mixSideSplitOpt : otherSplitOpt;
|
||||
|
||||
return {
|
||||
menuSetting: {
|
||||
|
Reference in New Issue
Block a user