iter(g313): sortableList 禁用态补视觉线索

This commit is contained in:
HIsheR
2026-10-27 00:43:55 +08:00
parent 2c9c0c1012
commit f873baf66a
7 changed files with 39 additions and 7 deletions
+3 -2
View File
@@ -1,6 +1,6 @@
# @ui-arch 组件库 Agent 文档(无图形版)
> 自动生成于 2026-10-26T16:42:26.169Z,数据源:各包 ua.manifest.json,勿手改。人类版文档站:apps/docs/index.html。
> 自动生成于 2026-10-26T16:43:41.739Z,数据源:各包 ua.manifest.json,勿手改。人类版文档站:apps/docs/index.html。
> 组件 = 普通函数,传 props 返回 DOM;状态用 signal 双向绑定:读 signal() 写 signal(v)。
## 快速上手
@@ -2508,7 +2508,7 @@ noticeBar({ text: '系统将于今晚 23:00 维护 10 分钟', scroll: true })
- items(必填):string[] —— 全部条目文案;文案即排序键,要求唯一(重名会让顺序回读撞车)
- value:Signal<string[]> —— 受控顺序信号;传了则内部改动写回,外部改动即重排(拖拽中跳过)
- onChange(回调):(next: string[]) => void —— 顺序变化回调,拖放落定 / 键盘搬位 / move 调用后各触发一次
- disabled(默认 false):boolean | Signal<boolean> —— 禁用拖拽与键盘搬位;缺省 false
- disabled(默认 false):boolean | Signal<boolean> —— 禁用拖拽与键盘搬位,同时整体置灰退到不可交互那一档(光标与悬停都不再给反馈);缺省 false
- emptyText:string —— 无条目占位文案;缺省「暂无可排序项」
示例:
@@ -2527,6 +2527,7 @@ container.append(sort.el);
5. 外部要按代码调整顺序用句柄 move(from, to),下标越界或禁用时静默忽略;order() 以 DOM 为唯一真相回读当前顺序
6. 条目超过一屏也能拖:指针进入最近滚动祖先(overflow-y 为 auto/scroll 且内容确已溢出)上下 48px 感应带即按帧自动滚,松手或离开感应带立刻停;找不到滚动祖先(整页跟随滚动)时不接管滚动,交给浏览器
7. 什么时候别用:需要严格的两级联动排序(树 / 表格分组)时它不够用,得自己在 onChange 里按父节点重排;跨列表搬运用两个实例各自持有顺序信号
8. 只看不改时传 disabled:光标回到默认、文字退到次级色、悬停与按下都不再变色,读屏播报 aria-disabled——禁用态最忌「看着能拖、拖了没反应」
现场演示:apps/docs/demo.html#sec-sortable