Back to Skills

handling-colors

verified

ReactUMG 颜色/色彩类型速查。在设置背景色、前景色、透明度、ColorAndOpacity、BrushColor、ForegroundColor 等颜色属性时激活。帮助区分 SlateColor(嵌套结构)和 LinearColor(直接结构)的正确用法,以及 ColorUseRule 的必要性。

View on GitHub

Marketplace

LomoMarketplace

15195999826/LomoMarketplace

Plugin

UE_ReactUMG

productivity

Repository

15195999826/LomoMarketplace

plugins/UE_ReactUMG/skills/handling-colors/SKILL.md

Last Verified

January 21, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/15195999826/LomoMarketplace/blob/main/plugins/UE_ReactUMG/skills/handling-colors/SKILL.md -a claude-code --skill handling-colors

Installation paths:

Claude
.claude/skills/handling-colors/
Powered by add-skill CLI

Instructions

# ReactUMG 颜色类型速查

## 两种颜色类型

| 类型 | 结构 | 示例 |
|------|------|------|
| **SlateColor** | `{SpecifiedColor: {R, G, B, A}}` | 嵌套结构 |
| **LinearColor** | `{R, G, B, A}` | 直接结构 |

## 属性 → 类型映射

| 组件 | 属性 | 类型 |
|------|------|------|
| TextBlock | `ColorAndOpacity` | SlateColor |
| TextBlock | `ShadowColorAndOpacity` | LinearColor |
| Border | `BrushColor` | LinearColor |
| Border | `ContentColorAndOpacity` | LinearColor |
| Image | `ColorAndOpacity` | LinearColor |
| Button | `ForegroundColor` (in style) | SlateColor |
| WidgetStyle | `ForegroundColor` | SlateColor |
| WidgetStyle | `FocusedForegroundColor` | SlateColor |

## 正确用法

```typescript
// SlateColor(嵌套)
<TextBlock
    ColorAndOpacity={{
        SpecifiedColor: {R: 0.9, G: 0.95, B: 1, A: 1}
    }}
/>

// LinearColor(直接)
<Border
    BrushColor={{R: 0.05, G: 0.08, B: 0.1, A: 0.95}}
/>
```

## ⚠️ 关键规则:ColorUseRule

**WidgetStyle 中的颜色必须加 `ColorUseRule: 0`**

```typescript
// ✅ 正确
WidgetStyle={{
    ForegroundColor: {
        SpecifiedColor: {R: 0.5, G: 0.5, B: 0.5, A: 1},
        ColorUseRule: 0  // 必须!
    }
}}

// ❌ 错误(颜色不会生效)
WidgetStyle={{
    ForegroundColor: {
        SpecifiedColor: {R: 0.5, G: 0.5, B: 0.5, A: 1}
        // 缺少 ColorUseRule: 0
    }
}}
```

## 快速判断方法

查看 IDE 错误信息:
- `"R does not exist in type RecursivePartial<SlateColor>"` → 用 SlateColor
- `"SpecifiedColor does not exist in type RecursivePartial<LinearColor>"` → 用 LinearColor

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
1341 chars