/**
|
* 环境配置管理
|
*/
|
|
// 环境类型枚举
|
export enum Environment {
|
DEVELOPMENT = 'development',
|
PRODUCTION = 'production',
|
TEST = 'test'
|
}
|
|
// 获取当前环境
|
export const getCurrentEnvironment = (): Environment => {
|
const mode = import.meta.env.MODE
|
if (mode === 'development') return Environment.DEVELOPMENT
|
if (mode === 'production') return Environment.PRODUCTION
|
if (mode === 'test') return Environment.TEST
|
return Environment.DEVELOPMENT // 默认开发环境
|
}
|
|
// 是否为开发环境
|
export const isDevelopment = (): boolean => {
|
return import.meta.env.DEV
|
}
|
|
// 是否为生产环境
|
export const isProduction = (): boolean => {
|
return import.meta.env.PROD
|
}
|
|
// 是否为测试环境
|
export const isTest = (): boolean => {
|
return import.meta.env.MODE === 'test'
|
}
|
|
// 菜单显示配置
|
export const getMenuConfig = () => {
|
return {
|
// 开发环境显示所有菜单
|
showLeftMenu: isDevelopment(),
|
showTopMenu: isDevelopment(),
|
showHeader: isDevelopment(),
|
showFooter: isDevelopment(),
|
// 生产环境只显示页面内容
|
showPageContent: true
|
}
|
}
|
|
// 布局样式配置
|
export const getLayoutConfig = () => {
|
const isDev = isDevelopment()
|
return {
|
// 主容器高度
|
mainContainerHeight: isDev ? 'calc(95vh - 90px)' : '100vh',
|
// 是否显示侧边栏
|
showSidebar: isDev,
|
// 是否显示顶部导航
|
showTopNav: isDev,
|
// 是否显示头部
|
showHeader: isDev,
|
// 是否显示底部版权信息
|
showFooter: isDev
|
}
|
}
|