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

import { MenuTypeEnum, MenuThemeEnum, MenuModeEnum } from '/@/enums/menuEnum';
import { ContentEnum, PermissionModeEnum, RouterTransitionEnum } from '/@/enums/appEnum';
5
import { primaryColor } from '../../build/config/lessModifyVars';
陈文彬 已提交
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
import { isProdMode } from '/@/utils/env';
// ! 改动后需要清空浏览器缓存
const setting: ProjectConfig = {
  // Whether to show the configuration button
  showSettingButton: true,
  // 权限模式
  permissionMode: PermissionModeEnum.ROLE,
  // 网站灰色模式,用于可能悼念的日期开启
  grayMode: false,
  // 色弱模式
  colorWeak: false,
  // 主题色
  themeColor: primaryColor,
  // 是否取消菜单,顶部,多标签页显示, 用于可能内嵌在别的系统内
  fullContent: false,
  // content mode
  contentMode: ContentEnum.FULL,
  // 是否显示logo
  showLogo: true,

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

V
vben 已提交
93
  // 自动锁屏时间,为0不锁屏。 单位分钟 默认0
陈文彬 已提交
94 95 96
  lockTime: 0,
  // 显示面包屑
  showBreadCrumb: true,
Z
ZhaoBin 已提交
97 98
  // 显示面包屑图标
  showBreadCrumbIcon: false,
陈文彬 已提交
99 100

  // 使用error-handler-plugin
V
vben 已提交
101
  useErrorHandle: isProdMode(),
陈文彬 已提交
102 103 104

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

陈文彬 已提交
106
  // 路由切换动画
107
  routerTransition: RouterTransitionEnum.FADE_SIDE,
陈文彬 已提交
108 109 110 111 112 113 114 115 116 117 118 119 120

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

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

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

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

121 122 123
  // 开启顶部进度条
  openNProgress: isProdMode(),

陈文彬 已提交
124 125
  //  是否可以嵌入iframe页面
  canEmbedIFramePage: true,
126 127 128 129 130 131 132

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

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

export default setting;