safety-eval-service-frontend/.cursor/skills/specs/14-环境变量与数据访问/01-主题色变量/SKILL.md

55 lines
2.0 KiB
Markdown
Raw Normal View History

2026-08-14 16:54:03 +08:00
---
name: jjb-theme-color-variables
description: 定义 JJB 主题色变量配置规范。在使用 @colorPrimary、process.env.app.antd、jjb.config.js framework 配置时查阅。
---
# 环境变量与数据访问
## 主题色变量
- **Less 文件**:使用 `@colorPrimary` 变量
- **JSX 内联样式**:使用 `process.env.app.antd['colorPrimary']` 变量
- **配置来源**:主题色配置来源于根目录 `jjb.config.js` 文件中的 `framework` 属性
- **`ant-prefix`(类名前缀)**`framework.antd['ant-prefix']` 会注入为 `process.env.app.antd['ant-prefix']`,并在 `Container``ConfigProvider` 上作为 `prefixCls` 使用。antd 组件 DOM 类名为 **`${ant-prefix}-*`**,不是默认的 `ant-*`。**在 Less/CSS 中覆盖 antd 内部样式时不得使用 `.ant-` 选择器**,详见 [`应用标识符与路由配置`](../../02-应用配置与开发环境/01-应用标识符与路由配置/SKILL.md) 中「Ant Design 类名前缀」。
- **配置结构**
```javascript
// jjb.config.js
{
framework: {
antd: {
'ant-prefix': 'app-open-maic', // 示例:常与 appIdentifier 对应为 app-${appIdentifier}
colorPrimary: '#1890ff'
}
}
}
```
- **访问方式**:在 JSX 代码中通过 `process.env.app.antd['colorPrimary']` 即可访问配置的主题色值
- **扩展支持**`framework.antd` 配置支持扩展其他 Less 变量,可在 `jjb.config.js` 中配置任意 antd 主题变量
- **配置示例**
```javascript
// jjb.config.js
{
framework: {
antd: {
colorPrimary: '#1890ff',
borderRadius: 6,
colorSuccess: '#52c41a',
// 可扩展其他 antd 主题变量
}
}
}
```
- **Less 文件使用**:配置的变量会自动注入为 Less 变量,在 `.less` 文件中可直接使用 `@colorPrimary`、`@borderRadius` 等变量
- **JSX 内联样式使用**:通过 `process.env.app.antd['变量名']` 访问扩展的变量