iter(g138): 日期选择支持区间模式

This commit is contained in:
HIsheR
2026-10-26 15:31:26 +08:00
parent b3fd20c103
commit 1af4e57a16
8 changed files with 110 additions and 19 deletions
+8
View File
@@ -1460,6 +1460,14 @@
"acceptance": "演示页头部提供暗色主题开关(写 html[data-theme],localStorage 记忆,初值跟随系统);--page-* 变量响应 data-theme,媒体查询只在未显式指定时生效;npm run check 全绿",
"notes": "自补:演示页完善",
"status": "done"
},
{
"id": "g138",
"title": "日期选择支持区间模式",
"motivation": "筛选条件几乎都要「起止日期」,datePicker 只有单日:调用方只能并排放两个选择器,用户看不出选了什么区间,也拿不到排序保证",
"acceptance": "datePicker 新增 range/end/onRangeChange:首点定起点不收弹层、次点定终点并排序,区间内部有底色;文档 props/steps 与演示同步;npm run check 全绿",
"notes": "自补:既有组件可用性细节",
"status": "open"
}
]
}
+23 -4
View File
@@ -1,6 +1,6 @@
{
"$schema": "ui-arch-registry-index/0.1",
"generatedAt": "2026-10-26T07:28:06.168Z",
"generatedAt": "2026-10-26T07:31:10.742Z",
"repoRoot": ".",
"packages": [
{
@@ -2609,12 +2609,29 @@
{
"n": "value",
"t": "Signal<string>",
"d": "选中日期(YYYY-MM-DD)信号;不传则内部维护"
"d": "选中日期(YYYY-MM-DD)信号;区间模式下是起始日,不传则内部维护"
},
{
"n": "range",
"t": "boolean",
"df": "false",
"d": "区间模式:首次点击定起点(弹层不收起),再次点击定终点;点早了自动交换先后"
},
{
"n": "end",
"t": "Signal<string>",
"d": "区间模式的结束日信号;不传则内部维护"
},
{
"n": "onRangeChange",
"t": "(start: string, end: string) => void",
"k": 1,
"d": "区间两端都选定后的回调,参数已按先后排序(单日模式不触发)"
},
{
"n": "placeholder",
"t": "string",
"d": "未选时占位文案;缺省「请选择日期」"
"d": "未选时占位文案;缺省「请选择日期」(区间模式缺省「请选择日期范围」)"
},
{
"n": "min",
@@ -2643,7 +2660,9 @@
"‹ › 翻月,底部「今天」一键跳今天并提交;今天用描边标记、选中用实心底色",
"键盘:←→ 逐日、↑↓ 逐周、PageUp/PageDown 逐月、Enter 提交,跨月会自动翻页",
"min / max 为闭区间,越界日期置灰不可点也不可键盘选中",
"value 传信号即受控;Esc 收起(与弹窗/抽屉共用逐层关闭栈)"
"value 传信号即受控;Esc 收起(与弹窗/抽屉共用逐层关闭栈)",
"选日期区间传 range: true:第一次点击只定起点(触发器显示「起 ~ …」),第二次点击补终点并收起,两端之间用低比重底色连成一条",
"区间回调走 onRangeChange(start, end),参数已排序——用户先点晚的日期也不会出现 start > end;只需检视当前值就同时读 value 与 end 两个信号"
]
},
{