Skip to content

配置项 ​

环境变量 ​

变量默认值说明
VITE_APP_TITLEWB-Admin站点标题、登录页大标题
VITE_API_BASE_URL/dev-api / /api接口前缀,最终会被 VITE_API_PREFIX 统一
VITE_API_PREFIX/api请求统一前缀
VITE_PORT3000开发服务端口
VITE_USE_MOCKtrue(dev)是否启用内置 Mock
VITE_ENABLE_TENANTtrue是否启用多租户(关闭后隐藏租户相关入口)
VITE_ENABLE_I18Ntrue是否启用国际化
VITE_ENABLE_DEMOtrue是否展示示例演示模块
VITE_ROUTER_MODEhistoryhistory / hash
VITE_BUILD_COMPRESSfalse构建产物压缩(Windows 下有已知路径问题,建议交给 Nginx)
VITE_BUILD_ANALYZEfalse是否产出打包分析页

构建与别名(vite.config.ts) ​

ts
resolve.alias = {
  '@': 'src',
  '#': 'types'
}

按需自动引入:

  • unplugin-auto-import:ref computed onMounted useRouter useRoute ElMessage 等
  • unplugin-vue-components + ElementPlusResolver:Element Plus 组件与样式

因此页面里不需要手动 import { ElMessage } from 'element-plus',但类型仍需显式导入: import type { FormInstance, FormRules } from 'element-plus'

手动分包(manualChunks):vue / element-plus / echarts / 其余 vendor,避免单个 chunk 过大。

主题与布局持久化 ​

主题状态写入 localStorage['wb-admin-theme'],index.html 里有一段内联脚本在首屏前读取并应用,避免闪白。

ts
interface ThemeState {
  mode: 'light' | 'dark'
  primaryColor: string
  layout: 'side' | 'top' | 'mix'
  sidebarOpened: boolean
  tagsView: boolean
  fixedHeader: boolean
  footer: boolean
  gray: boolean       // 灰色模式(哀悼)
  weak: boolean       // 色弱模式
  compact: boolean
  allowWatermark: boolean
}

各 store 的持久化白名单 ​

storekey持久化字段
userwb-admin-useruserId / userName / nickName / avatar / roles / permissions / tenantId / currentRole / isSuperAdmin
tenantwb-admin-tenantcurrentId / tenants
dictwb-admin-dict字典缓存
appwb-admin-app语言 / 设备 / 锁屏时间

token 不进 localStorage,走 js-cookie(remember 勾选时延长有效期),见 src/utils/auth.ts。