配置项
2.1 / Vben 5.7 变化
- 管理端底座已同步到 Vben 5.7,应用包仍位于
apps/web-antd。 - 开发配置文件使用
apps/web-antd/vite.config.ts。 - UI 组件库使用 antdv-next;业务代码需要手动导入底层组件时,从
antdv-next导入。 - 后端路由模式仍为
backend,菜单和按钮权限由后端返回。 VITE_APP_NAMESPACE会和应用版本、环境一起组成本地存储前缀,升级版本后会自然隔离旧缓存。
环境变量
环境变量文件位于 apps/web-antd/ 目录下:
| 文件 | 说明 |
|---|---|
.env | 公共配置 |
.env.development | 开发环境 |
.env.production | 生产环境 |
.env.test | 测试环境 |
核心配置
ini
# 应用标题
VITE_APP_TITLE=Yi Admin
# 应用命名空间
VITE_APP_NAMESPACE=vben-web-antd
# 端口号
VITE_PORT=5666
# 基础路径
VITE_BASE=/
# 后端 API 地址
VITE_GLOB_API_URL=/api
# SignalR Hub 地址
VITE_GLOB_HUB_URL=/hub
# 开启 SignalR
VITE_GLOB_SIGNALR_ENABLE=true
# 客户端 ID
VITE_GLOB_APP_CLIENT_ID=e5cd7e4891bf95d1d19206ce24a7b32e应用命名空间
VITE_APP_NAMESPACE 用于区分浏览器缓存、Pinia 持久化数据等本地存储。当前 apps/web-antd/src/main.ts 会自动把应用版本和环境拼进命名空间:
typescript
const namespace = `${import.meta.env.VITE_APP_NAMESPACE}-${appVersion}-${env}`;appVersion 来自 apps/web-antd/package.json。框架版本升级到 2.1.0 后,最终命名空间会随版本变化,从而自然隔离旧版本缓存。
注意
如果本地出现旧版本缓存导致的菜单、主题、标签页异常,优先确认当前命名空间是否已经变化;必要时清理浏览器 LocalStorage 后重新登录。
加密配置
ini
# 全局加密开关
VITE_GLOB_ENABLE_ENCRYPT=false
# RSA 公钥(请求加密)
VITE_GLOB_RSA_PUBLIC_KEY=xxx
# RSA 私钥(响应解密)
VITE_GLOB_RSA_PRIVATE_KEY=xxx注意
RSA 公私钥需要两对:
- 请求加密(前端)→ 后端解密
- 响应解密(前端)← 后端加密
偏好设置
偏好设置文件:apps/web-antd/src/preferences.ts
typescript
import { defineOverridesPreferences } from '@vben/preferences';
export const overridesPreferences = defineOverridesPreferences({
app: {
accessMode: 'backend', // 后端路由模式
enableRefreshToken: false, // 不需要 refresh token
name: import.meta.env.VITE_APP_TITLE,
},
footer: {
enable: false, // 不显示 footer
},
tabbar: {
persist: false, // 标签页不持久化
},
theme: {
semiDarkSidebar: false, // 浅色侧边栏
},
});注意
修改 VITE_APP_NAMESPACE 或应用版本会改变本地存储命名空间,相当于启用一套新的前端缓存。
更换 Logo
在 preferences.ts 中配置:
typescript
logo: {
enable: true,
source: '/logo.png', // 本地 public 目录
// source: 'https://example.com/logo.png', // 网络图片
},