iter: d03 新增折叠面板 accordion 组件
This commit is contained in:
+28
-2
@@ -1,6 +1,6 @@
|
||||
# @ui-arch 组件库 Agent 文档(无图形版)
|
||||
|
||||
> 自动生成于 2026-10-23T08:46:56.936Z,数据源:各包 ua.manifest.json,勿手改。人类版文档站:apps/docs/index.html。
|
||||
> 自动生成于 2026-10-23T08:47:49.411Z,数据源:各包 ua.manifest.json,勿手改。人类版文档站:apps/docs/index.html。
|
||||
> 组件 = 普通函数,传 props 返回 DOM;状态用 signal 双向绑定:读 signal() 写 signal(v)。
|
||||
|
||||
## 快速上手
|
||||
@@ -40,7 +40,7 @@
|
||||
|
||||
## @ui-arch/ui(skin-dom)v0.1.0
|
||||
|
||||
21 个 DOM 组件,统一用法:组件是普通函数,传入 props 返回 DOM 节点;需要状态时先创建 signal 再双向绑定。引入 CSS:import '@ui-arch/ui/ui.css'(内部已消费 tokens)。
|
||||
22 个 DOM 组件,统一用法:组件是普通函数,传入 props 返回 DOM 节点;需要状态时先创建 signal 再双向绑定。引入 CSS:import '@ui-arch/ui/ui.css'(内部已消费 tokens)。
|
||||
|
||||
### button — 按钮 Button
|
||||
|
||||
@@ -233,6 +233,31 @@ const size = signal('m'); radioGroup({ options: [{ value: 's', label: '小' }, {
|
||||
|
||||
现场演示:apps/docs/demo.html#sec-form
|
||||
|
||||
### accordion — 折叠面板 Accordion
|
||||
|
||||
参数:
|
||||
|
||||
- items(必填):AccordionItem[] —— 面板列表:{ value, title, content, disabled? }
|
||||
- active:Signal<string> —— 受控展开面板信号(单开模式);缺省由组件内部持有状态
|
||||
- multiple(默认 false):boolean —— 允许多个面板同时展开;缺省 false(手风琴,单开)
|
||||
- onChange(回调):(active: string) => void —— 展开变化回调:收起时传空串
|
||||
|
||||
示例:
|
||||
|
||||
```
|
||||
accordion({ items: [{ value: 'a', title: '账户设置', content: '内容…' }, { value: 'b', title: '通知', content: h('p', null, '…') }] })
|
||||
```
|
||||
|
||||
手把手:
|
||||
|
||||
1. 准备 items:value 作标识、title 作标题、content 可为字符串 / DOM 节点 / 响应式函数
|
||||
2. 默认手风琴模式:展开一个自动收起其他;需要同时展开多个时传 multiple: true
|
||||
3. 需要外部控制或读取展开项时传 active 信号(受控单开),否则组件内部自持状态
|
||||
4. 标题是原生 button:Tab 聚焦、Enter / Space 切换,展开态带 aria-expanded + region 关联
|
||||
5. 内容区用 grid 行高 0fr → 1fr 过渡,无需测量高度;reduced-motion 用户自动静态切换
|
||||
|
||||
现场演示:apps/docs/demo.html#sec-accordion
|
||||
|
||||
### card — 卡片 Card
|
||||
|
||||
参数:
|
||||
@@ -548,6 +573,7 @@ API 速览:
|
||||
- select(props):自绘下拉选择(非原生 select),value 信号双向绑定,点外部 / Esc 关闭,选项弹层带微动画,disabled 支持布尔或信号禁用
|
||||
- menu(props):下拉菜单,触发器 + 自绘弹层,条目支持禁用 / 危险 / 分隔线,↑↓ 环形导航,点外部 / Esc 关闭
|
||||
- radioGroup(props):单选组,options + value 信号双向绑定,disabled 整组禁用
|
||||
- accordion(props):折叠面板,标题按钮 + grid 行高过渡,单开(手风琴)或多开,支持禁用面板与 active 信号受控
|
||||
- card(props, ...children):卡片容器
|
||||
- badge(props):徽标,variant = default | success | warning | danger
|
||||
- alert(props):提示条,variant = info | success | warning | danger
|
||||
|
||||
Reference in New Issue
Block a user