| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200 |
- import type { ProjectConfig } from '/#/config';
- import { MenuTypeEnum, TriggerEnum, MixSidebarTriggerEnum } from '/@/enums/menuEnum';
- import { CacheTypeEnum } from '/@/enums/cacheEnum';
- import {
- ContentEnum,
- PermissionModeEnum,
- ThemeEnum,
- RouterTransitionEnum,
- SettingButtonPositionEnum,
- SessionTimeoutProcessingEnum,
- TabsThemeEnum,
- } from '/@/enums/appEnum';
- import { darkMode } from '/@/settings/designSetting';
- import { getConfigByMenuType } from '../utils/getConfigByMenuType';
- // 修改此属性,实现默认的四个系统主题快速切换
- const menuType = MenuTypeEnum.SIDEBAR;
- // update-begin--author:liaozhiyang---date:20251201---for【QQYUN-14176】修改一个配置就能切换默认四个主题,不需要额外修改颜色等
- const { themeColor, headerBgColor, sideBgColor, split, mode } = getConfigByMenuType(menuType);
- // update-end--author:liaozhiyang---date:20251201---for【QQYUN-14176】修改一个配置就能切换默认四个主题,不需要额外修改颜色等
- // ! 改动后需要清空浏览器缓存
- const setting: ProjectConfig = {
- // 是否显示SettingButton
- showSettingButton: false,
- // 是否显示主题切换按钮
- showDarkModeToggle: false,
- // 设置按钮位置 可选项
- // SettingButtonPositionEnum.AUTO: 自动选择
- // SettingButtonPositionEnum.HEADER: 位于头部
- // SettingButtonPositionEnum.FIXED: 固定在右侧
- settingButtonPosition: SettingButtonPositionEnum.AUTO,
- // 权限模式,默认前端角色权限模式
- // ROUTE_MAPPING: 前端模式(菜单由路由生成,默认)
- // ROLE:前端模式(菜单路由分开)
- // BACK:后台模式
- permissionMode: PermissionModeEnum.BACK,
- // 权限缓存存放位置。默认存放于localStorage
- permissionCacheType: CacheTypeEnum.LOCAL,
- // 会话超时处理方案
- // SessionTimeoutProcessingEnum.ROUTE_JUMP: 路由跳转到登录页
- // SessionTimeoutProcessingEnum.PAGE_COVERAGE: 生成登录弹窗,覆盖当前页面
- sessionTimeoutProcessing: SessionTimeoutProcessingEnum.ROUTE_JUMP,
- // 项目主题色 - 根据导航栏模式确定主题色动态设置
- themeColor: themeColor,
- // 项目主题模式
- themeMode: darkMode,
- // 网站灰色模式,用于可能悼念的日期开启
- grayMode: false,
- // 色弱模式
- colorWeak: false,
- // 是否取消菜单,顶部,多标签页显示, 用于可能内嵌在别的系统内
- fullContent: false,
- // 主题内容宽度
- contentMode: ContentEnum.FULL,
- // 是否显示logo
- showLogo: true,
- // 是否显示底部信息 copyright
- showFooter: false,
- // 头部配置
- headerSetting: {
- // 背景色
- bgColor: headerBgColor,
- // 固定头部
- fixed: true,
- // 是否显示顶部
- show: true,
- // 主题
- theme: ThemeEnum.LIGHT,
- // 开启锁屏功能
- useLockPage: false,
- // 显示全屏按钮
- showFullScreen: false,
- // 显示官网按钮
- showDoc: false,
- // 显示消息中心按钮
- showNotice: false,
- // 显示菜单搜索按钮
- showSearch: false,
- },
- // 菜单配置
- menuSetting: {
- // 背景色
- bgColor: sideBgColor,
- // 是否固定住左侧菜单
- fixed: true,
- // 菜单折叠
- collapsed: false,
- // 折叠菜单时候是否显示菜单名
- collapsedShowTitle: false,
- // 是否可拖拽
- // Only limited to the opening of the left menu, the mouse has a drag bar on the right side of the menu
- canDrag: false,
- // Whether to show no dom
- show: true,
- // Whether to show dom
- hidden: false,
- // 菜单宽度
- menuWidth: 210,
- // 菜单模式
- mode,
- // 菜单类型
- type: menuType,
- // 菜单主题
- theme: ThemeEnum.LIGHT,
- // 左侧导航栏文字颜色调整区分彩色和暗黑 (不对应配置)
- isThemeBright: false,
- // 分割菜单
- split,
- // 顶部菜单布局
- topMenuAlign: 'center',
- // 折叠触发器的位置
- trigger: TriggerEnum.HEADER,
- // 手风琴模式,只展示一个菜单
- accordion: true,
- // 在路由切换的时候关闭左侧混合菜单展开菜单
- closeMixSidebarOnChange: false,
- // 左侧混合菜单模块切换触发方式 ‘click’ |'hover'
- mixSideTrigger: MixSidebarTriggerEnum.CLICK,
- // 是否固定左侧混合菜单
- mixSideFixed: false,
- },
- // 多标签
- multiTabsSetting: {
- // 刷新后是否保留已经打开的标签页
- cache: false,
- // 开启
- show: true,
- // 是否可以拖拽
- canDrag: true,
- // 开启快速操作
- showQuick: false,
- // 是否显示刷新按钮
- showRedo: false,
- // 是否显示折叠按钮
- showFold: false,
- // 标签页样式
- theme: TabsThemeEnum.SIMPLE,
- },
- // 动画配置
- transitionSetting: {
- // 是否开启切换动画
- // The disabled state will also disable pageLoading
- enable: true,
- // 动画名 Route basic switching animation
- basicTransition: RouterTransitionEnum.FADE_SIDE,
- // 是否打开页面切换loading
- // Only open when enable=true
- openPageLoading: true,
- //是否打开页面切换顶部进度条
- openNProgress: true,
- },
- // 是否开启KeepAlive缓存 开发时候最好关闭,不然每次都需要清除缓存
- openKeepAlive: false,
- // 自动锁屏时间,为0不锁屏。 单位分钟 默认1个小时
- lockTime: 0,
- // 显示面包屑
- showBreadCrumb: false,
- // 显示面包屑图标
- showBreadCrumbIcon: false,
- // 是否使用全局错误捕获
- useErrorHandle: false,
- // 是否开启回到顶部
- useOpenBackTop: true,
- // 是否可以嵌入iframe页面
- canEmbedIFramePage: false,
- // 切换界面的时候是否删除未关闭的message及notify
- closeMessageOnSwitch: true,
- // 切换界面的时候是否取消已经发送但是未响应的http请求。
- // 如果开启,想对单独接口覆盖。可以在单独接口设置
- removeAllHttpPending: false,
- };
- export default setting;
|