projectSetting.ts 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. import type { ProjectConfig } from '/@/types/config';
  2. import { MenuTypeEnum, MenuModeEnum, TriggerEnum } from '/@/enums/menuEnum';
  3. import { ContentEnum, PermissionModeEnum, ThemeEnum, RouterTransitionEnum } from '/@/enums/appEnum';
  4. import { primaryColor } from '../../build/config/lessModifyVars';
  5. import { isProdMode } from '/@/utils/env';
  6. // ! You need to clear the browser cache after the change
  7. const setting: ProjectConfig = {
  8. // locale setting
  9. locale: {
  10. // Locales
  11. lang: 'zh_CN',
  12. // Default locale
  13. fallback: 'zh_CN',
  14. // available Locales
  15. availableLocales: ['zh_CN', 'en'],
  16. },
  17. // color
  18. // TODO 主题色
  19. themeColor: primaryColor,
  20. // header bg color
  21. headerBgColor: '#ffffff',
  22. // sidebar menu bg color
  23. menuBgColor: '#273352',
  24. // Whether to show the configuration button
  25. showSettingButton: true,
  26. // 权限模式
  27. permissionMode: PermissionModeEnum.ROLE,
  28. // 网站灰色模式,用于可能悼念的日期开启
  29. grayMode: false,
  30. // 色弱模式
  31. colorWeak: false,
  32. // 是否取消菜单,顶部,多标签页显示, 用于可能内嵌在别的系统内
  33. fullContent: false,
  34. // content mode
  35. contentMode: ContentEnum.FULL,
  36. // 是否显示logo
  37. showLogo: true,
  38. // 头部配置
  39. headerSetting: {
  40. fixed: true,
  41. // 是否显示顶部
  42. show: true,
  43. // theme
  44. theme: ThemeEnum.LIGHT,
  45. // 开启锁屏功能
  46. useLockPage: true,
  47. // 显示刷新按钮
  48. showRedo: true,
  49. // 显示全屏按钮
  50. showFullScreen: true,
  51. // 显示文档按钮
  52. showDoc: true,
  53. // 是否显示github
  54. showGithub: true,
  55. // 显示消息中心按钮
  56. showNotice: true,
  57. },
  58. // 菜单配置
  59. menuSetting: {
  60. // 菜单折叠
  61. collapsed: false,
  62. // 折叠菜单时候是否显示菜单名
  63. collapsedShowTitle: false,
  64. // 是否可拖拽
  65. hasDrag: false,
  66. // 是否显示 没有dom
  67. show: true,
  68. // 是否显示 有dom
  69. hidden: true,
  70. // 是否显示搜索框
  71. showSearch: true,
  72. // 菜单宽度
  73. menuWidth: 210,
  74. // 菜单模式
  75. mode: MenuModeEnum.INLINE,
  76. // 菜单类型
  77. type: MenuTypeEnum.SIDEBAR,
  78. // 菜单主题
  79. theme: ThemeEnum.DARK,
  80. // 分割菜单
  81. split: false,
  82. // 顶部菜单布局
  83. topMenuAlign: 'center',
  84. // 折叠菜单时候隐藏搜索框
  85. collapsedShowSearch: false,
  86. // 折叠触发器的位置
  87. trigger: TriggerEnum.HEADER,
  88. // 开启手风琴模式,只显示一个菜单
  89. accordion: true,
  90. },
  91. // 多标签
  92. multiTabsSetting: {
  93. // 开启
  94. show: true,
  95. // 开启快速操作
  96. showQuick: true,
  97. // 显示icon
  98. showIcon: false,
  99. // 标签页缓存最大数量
  100. max: 12,
  101. },
  102. // 是否开启KeepAlive缓存 开发时候最好关闭,不然每次都需要清除缓存
  103. openKeepAlive: true,
  104. // 自动锁屏时间,为0不锁屏。 单位分钟 默认0
  105. lockTime: 0,
  106. // 显示面包屑
  107. showBreadCrumb: true,
  108. // 显示面包屑图标
  109. showBreadCrumbIcon: false,
  110. // 使用error-handler-plugin
  111. useErrorHandle: isProdMode(),
  112. // 开启页面切换动画
  113. openRouterTransition: true,
  114. // 路由切换动画
  115. routerTransition: RouterTransitionEnum.FADE_SIDE,
  116. // 是否开启登录安全校验
  117. openLoginVerify: true,
  118. // 是否开启页面切换loading
  119. openPageLoading: true,
  120. // 是否开启回到顶部
  121. useOpenBackTop: true,
  122. // 开启顶部进度条
  123. openNProgress: isProdMode(),
  124. // 是否可以嵌入iframe页面
  125. canEmbedIFramePage: true,
  126. // 切换界面的时候是否删除未关闭的message及notify
  127. closeMessageOnSwitch: true,
  128. // 切换界面的时候是否取消已经发送但是未响应的http请求。
  129. // 如果开启,想对单独接口覆盖。可以在单独接口设置
  130. removeAllHttpPending: true,
  131. };
  132. export default setting;