projectSetting.ts 3.6 KB
Newer Older
陈文彬 已提交
1 2
import type { ProjectConfig } from '/@/types/config';

V
vben 已提交
3
import { MenuTypeEnum, MenuThemeEnum, MenuModeEnum, TriggerEnum } from '/@/enums/menuEnum';
V
vben 已提交
4
import { ContentEnum, RouterTransitionEnum } from '/@/enums/appEnum';
5
import { primaryColor } from '../../build/config/lessModifyVars';
V
vben 已提交
6 7
import { isProdMode, getRoleMode } from '/@/utils/env';

V
vben 已提交
8
// ! You need to clear the browser cache after the change
陈文彬 已提交
9 10 11 12
const setting: ProjectConfig = {
  // Whether to show the configuration button
  showSettingButton: true,
  // 权限模式
V
vben 已提交
13
  permissionMode: getRoleMode(),
陈文彬 已提交
14 15 16 17 18 19 20 21 22 23 24 25 26
  // 网站灰色模式,用于可能悼念的日期开启
  grayMode: false,
  // 色弱模式
  colorWeak: false,
  // 主题色
  themeColor: primaryColor,
  // 是否取消菜单,顶部,多标签页显示, 用于可能内嵌在别的系统内
  fullContent: false,
  // content mode
  contentMode: ContentEnum.FULL,
  // 是否显示logo
  showLogo: true,

V
vben 已提交
27
  // 头部配置
陈文彬 已提交
28 29 30 31 32 33 34
  headerSetting: {
    fixed: true,
    // 是否显示顶部
    show: true,
    // theme
    theme: MenuThemeEnum.LIGHT,
    // 开启锁屏功能
V
vben 已提交
35
    useLockPage: true,
陈文彬 已提交
36 37 38 39 40 41 42 43
    // 显示刷新按钮
    showRedo: true,
    // 显示全屏按钮
    showFullScreen: true,
    // 显示文档按钮
    showDoc: true,
    //  是否显示github
    showGithub: true,
C
chen-xt 已提交
44 45
    // 显示消息中心按钮
    showNotice: true,
陈文彬 已提交
46 47 48 49 50
  },
  // 菜单配置
  menuSetting: {
    // 菜单折叠
    collapsed: false,
V
vben 已提交
51 52
    // 折叠菜单时候是否显示菜单名
    collapsedShowTitle: false,
陈文彬 已提交
53
    // 是否可拖拽
V
vben 已提交
54
    hasDrag: false,
V
vben 已提交
55
    // 是否显示 没有dom
陈文彬 已提交
56
    show: true,
V
vben 已提交
57 58
    // 是否显示 有dom
    hidden: false,
陈文彬 已提交
59 60 61
    // 是否显示搜索框
    showSearch: true,
    // 菜单宽度
V
vben 已提交
62
    menuWidth: 200,
陈文彬 已提交
63 64 65 66 67 68 69 70 71
    // 菜单模式
    mode: MenuModeEnum.INLINE,
    // 菜单类型
    type: MenuTypeEnum.SIDEBAR,
    // 菜单主题
    theme: MenuThemeEnum.DARK,
    // 分割菜单
    split: false,
    // 顶部菜单布局
V
vben 已提交
72
    topMenuAlign: 'center',
V
vben 已提交
73
    // 折叠菜单时候隐藏搜索框
V
vben 已提交
74 75 76
    collapsedShowSearch: false,
    // 折叠触发器的位置
    trigger: TriggerEnum.HEADER,
陈文彬 已提交
77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
  },
  // 消息配置
  messageSetting: {
    // 弹窗title
    title: '操作提示',
    // 取消按钮的文子,
    cancelText: '取消',
    // 确认按钮的文字
    okText: '确定',
  },
  // 多标签
  multiTabsSetting: {
    // 开启
    show: true,
    // 开启快速操作
    showQuick: true,
    // 显示icon
V
vben 已提交
94
    showIcon: false,
陈文彬 已提交
95 96 97 98 99 100
    // 标签页缓存最大数量
    max: 12,
  },
  // 是否开启KeepAlive缓存  开发时候最好关闭,不然每次都需要清除缓存
  openKeepAlive: true,

V
vben 已提交
101
  // 自动锁屏时间,为0不锁屏。 单位分钟 默认0
陈文彬 已提交
102 103 104
  lockTime: 0,
  // 显示面包屑
  showBreadCrumb: true,
Z
ZhaoBin 已提交
105 106
  // 显示面包屑图标
  showBreadCrumbIcon: false,
陈文彬 已提交
107 108

  // 使用error-handler-plugin
V
vben 已提交
109
  useErrorHandle: isProdMode(),
陈文彬 已提交
110 111 112

  //  开启页面切换动画
  openRouterTransition: true,
V
vben 已提交
113

陈文彬 已提交
114
  // 路由切换动画
115
  routerTransition: RouterTransitionEnum.FADE_SIDE,
陈文彬 已提交
116 117 118 119 120 121 122 123 124 125 126 127 128

  // 是否开启登录安全校验
  openLoginVerify: true,

  // 是否监听网络变化
  listenNetWork: false,

  // 是否开启页面切换loading
  openPageLoading: true,

  // 是否开启回到顶部
  useOpenBackTop: true,

129 130 131
  // 开启顶部进度条
  openNProgress: isProdMode(),

陈文彬 已提交
132 133
  //  是否可以嵌入iframe页面
  canEmbedIFramePage: true,
134 135 136 137 138 139 140

  // 切换界面的时候是否删除未关闭的message及notify
  closeMessageOnSwitch: true,

  // 切换界面的时候是否取消已经发送但是未响应的http请求。
  // 如果开启,想对单独接口覆盖。可以在单独接口设置
  removeAllHttpPending: true,
陈文彬 已提交
141 142 143
};

export default setting;