Tree 设计文档
树形控件(严格对齐 Semi):层级展示节点,支持展开/收起、单选/多选(multiple 驱动 checkbox 父子联动含半选 mixed)、内置搜索高亮。值通道统一走 value/onChange。受控 value/expandedKeys 均不回写,仅通过 onChange/onExpand/onSelect/onSearch 通知。键盘导航遵循 WAI-ARIA APG Tree View(单一 tab stop + aria-activedescendant)。
← API 文档使用建议
树形控件(严格对齐 Semi):层级展示节点,支持展开/收起、单选/多选(multiple 驱动 checkbox 父子联动含半选 mixed)、内置搜索高亮。值通道统一走 value/onChange。受控 value/expandedKeys 均不回写,仅通过 onChange/onExpand/onSelect/onSearch 通知。键盘导航遵循 WAI-ARIA APG Tree View(单一 tab stop + aria-activedescendant)。
Accessibility
- role=tree(aria-multiselectable=multiple)容器为单一 tab stop,焦点通过 aria-activedescendant 指向当前高亮 treeitem;每行 role=treeitem 含 aria-level/setsize/posinset/expanded/disabled,单选时 aria-selected、多选时 aria-checked 支持 true/false/"mixed"(半选)。方向键导航:↑↓ 移动、→ 展开/进入子、← 折叠/回父、Home/End 首末、Enter 选中、Space 勾选或选中。
设计变量
| 变量 | 默认值 | 用法 |
|---|---|---|
--cd-color-tree-option-bg-active | var(--cd-color-primary-light-default) | 树选项选中/激活背景($color-tree_option-bg-active) |
--cd-color-tree-option-bg-hover | var(--cd-color-fill-0) | 树选项悬停背景($color-tree_option-bg-hover) |
--cd-color-tree-option-disabled-text-default | var(--cd-color-disabled-text) | 禁用树选项文字颜色($color-tree_option_disabled-text-default) |
--cd-color-tree-option-draggable-insert-border-default | var(--cd-color-primary) | 可拖拽插入指示线颜色($color-tree_option_draggable_insert-border-default) |
--cd-color-tree-option-highlight-text | var(--cd-color-primary) | 搜索命中高亮文本色($color-tree_option_hightlight-text) |
--cd-color-tree-option-icon-active | var(--cd-color-black) | 展开图标按下色($color-tree_option-icon-active) |
--cd-color-tree-option-icon-default | var(--cd-color-text-2) | 展开箭头 / 节点图标颜色($color-tree_option-icon-default) |
--cd-color-tree-option-icon-hover | var(--cd-color-text-0) | 展开图标悬停色($color-tree_option-icon-hover) |
--cd-color-tree-option-line | var(--cd-color-text-3) | showLine 连接线颜色(Semi 用 --semi-color-text-3) |
--cd-color-tree-option-loading-icon-default | var(--cd-color-primary) | 树选项加载 spin 颜色($color-tree_option_loading-icon-default) |