# 显示主题

系统提供了 DynamicTheme 对象,用于在不修改前端代码的情况下定制界面的品牌元素和整体风格,包括页面标题、Logo、网站图标、主题色与布局,以及登录后的首页。

# 目标读者

本文档的目标读者为:本系统的开发和实施人员

# 维护主题

主题在菜单 开发配置 > 界面显示 > 显示主题 中维护。系统内置一个名为"默认风格"的主题,下图为编辑"默认风格"的界面:

编辑显示主题

字段 说明
名称(name) 主题名称,唯一,创建后不可修改
描述(description) 说明
页面标题(title) 左上角的系统名称和登录页标题,例如"牧言低代码开发平台演示系统"
收藏图标(favicon) 浏览器标签页上的网站图标
Logo(logo) 左上角的 Logo
方形 Logo(squareLogo) 登录页上显示的 Logo
主题配置(themeSettings) JSON,界面布局与主题色配置,见下文
首页(landingPage) 登录后首页显示的表单(DynamicForm)。编辑表单中没有该字段,需通过 CSV 或数据 API 设置(CSV 列名为 landingPage.name,填表单的名称,下方的默认表头中没有这一列,需要时自行添加);为空时显示系统默认首页
背景图片(backgroundImage) 当前版本前端不使用该字段
CSS 定义(css) 当前版本前端不加载该字段中的样式
SSO 启用逻辑(ssoEnableLogic) 当前版本前端不使用该字段

编辑表单的分组标题(Basic Information、Images、Logics)目前显示为英文。

CSV 种子数据的表头如下((F) 表示该列的值为文件路径,平台读取文件内容导入):

name(*),description,css(F),active,title,squareLogo,favicon,backgroundImage,logo,themeSettings(F)
1

# 主题配置(themeSettings)

themeSettings 是一个 JSON 对象,前端把它合并到 Ant Design Pro 布局(ProLayout)的配置中,其中的 token 合并到 Ant Design 的主题 token 中。可用的键请参考 ProLayout 文档 (opens new window) 与 Ant Design 定制主题 (opens new window)。"默认风格"的配置如下:

{
  "pwa": true,
  "token": {},
  "layout": "mix",
  "navTheme": "light",
  "colorWeak": false,
  "components": {},
  "fixSiderbar": true,
  "fixedHeader": false,
  "colorPrimary": "#1890ff",
  "contentWidth": "Fluid"
}
1
2
3
4
5
6
7
8
9
10
11
12

常用的键:

键 说明
layout 布局方式:side(侧边菜单)、top(顶部菜单)、mix(混合)
navTheme 菜单主题:light、realDark
colorPrimary 主色
fixSiderbar / fixedHeader 是否固定侧边栏 / 顶栏
contentWidth 内容区宽度:Fluid(流式)、Fixed(定宽,仅 top 布局有效)
token Ant Design 主题 token,例如 {"colorPrimary": "#00b96b", "borderRadius": 4}

# 激活主题

同时只能有一个主题生效。在主题列表中展开某个主题行末的下拉菜单,点击"激活",在确认框中点击"确定"即可使其生效,该动作要求当前用户具有 DEVELOPER 角色。确认框目前显示为英文(标题 Active,内容为 "Active theme(s)? active theme will be shown in UI")。

某个主题生效后,内置的对象客制化(DynamicTheme:afterUpdate、DynamicTheme:afterCreate)会自动把其他主题标记为不生效。因此通过 CSV 种子数据或数据 API 新建、保存一个 active 为 true 的主题,效果与点击"激活"相同。

前端通过无需登录的接口 GET /theme/info(路径省略了 /api 前缀,见 地址前缀)读取当前生效主题的标题、图片地址、首页和 themeSettings,刷新页面后即可看到新主题的效果。

1.0 起已移除按表单、字段注入 CSS 选择器的定制方式(界面风格请通过 themeSettings 调整)。

Last Updated: 2026/9/24 14:27:35