计时器 basic-timing
2026年7月20日大约 3 分钟
计时器 basic-timing
正计时 / 倒计时。
- 类型串:
basic-timing默认尺寸:[320, 80]分类:时间
实时预览
下面渲染的是真实组件(与编辑器 / 运行时同源)。修改右侧「样式参数」,左侧预览实时更新;点击底部「全页面查看」可放大。
倒计时到指定时间:
timing-mode: 'anticlockwise'+anticlockwise-mode: 'custom'+time-end目标时刻,timing-unit里非 token 字符原样输出(如「天」)。到点后归零并停住,可再配「事件交互」在归零时切状态 / 弹窗做到点提醒。
属性
下表为本组件特有的属性;
position/size/opacity/background/border/ 联动选中 / 筛选等通用参数见组件手册总览。
basic
| 属性 | 名称 | 类型 | 默认 | 说明 |
|---|---|---|---|---|
timing-mode | 计时方式 | select(radioGroup) | clockwise | 可选:clockwise / anticlockwise |
time-begin-mode | 起始方式 | select(radioGroup) | project-firing | 可选:project-firing / custom |
time-begin | 开始时间 | string | 2026-01-01 00:00:00 | |
anticlockwise-mode | 倒计时方式 | select(radioGroup) | project-firing | 可选:project-firing / custom |
time-duration | 倒计时时长(秒) | number(min=0,unit=秒) | 3600 | |
time-end | 结束时间 | string | 2026-12-31 23:59:59 | |
timing-unit | 显示格式 | string | DD:HH:mm:ss |
font
| 属性 | 名称 | 类型 | 默认 | 说明 |
|---|---|---|---|---|
text-font | 字体 | font(gradient=true,underline=true,line-through=true) | {"size":20,"color":"#ffffff"} | |
font-spacing | 字体间隔 | number(unit=px) | 0 | |
font-line-height | 行高 | number(unit=px,min=0) | 0 | |
text-indent | 文字缩进 | number(unit=px) | 0 | |
text-tilt | 文字倾斜 | vector<W,H>(unit=px) | [0,0] | |
text-position | 水平对齐方式 | select(radioGroup) | center | 可选:left / center / right |
text-vertical | 竖直对齐方式 | select(radioGroup) | center | 可选:top / center / bottom |
text-position-relative | 文本位置 | vector<X,Y>(unit=px) | [0,0] | |
font-shadow-color | 发光颜色 | color | #ffffff | |
font-shadow-blur | 发光模糊 | number(unit=px) | -1 | |
font-shadow-offset-x | 水平偏移 | number(unit=px) | 0 | |
font-shadow-offset-y | 垂直偏移 | number(unit=px) | 0 | |
shadow-color | 投影颜色 | color | #ffffff | |
shadow-blur | 投影模糊 | number(unit=px) | -1 | |
shadow-offset-x | 水平偏移 | number(unit=px) | 0 | |
shadow-offset-y | 垂直偏移 | number(unit=px) | 0 |
数据绑定
无组件特有数据绑定字段(纯样式 / 布局 / 装饰)。
事件
触发器
触发器在预览 / 播放态生效(编辑态点击 = 选中组件)。写在本组件
options.interactions的groups[].trigger里。
| 触发器 | 名称 | 触发时机 | payload(供动作公式 {:字段} 取值) |
|---|---|---|---|
click | 点击 | 点击本组件时触发 | 无 |
mouseEnter | 鼠标移入 | 指针移入组件时触发 | 无 |
mouseLeave | 鼠标移出 | 指针移出组件时触发 | 无 |
appear | 入场 | 组件出现时触发(配合进场动画) | 无 |
disappear | 离场 | 组件消失时触发(配合退场动画) | 无 |
receiveBehaviorEvent | 接收行为事件 | 收到 sendBehaviorEvent 动作或宿主 ctx.emit 投递的事件时触发(按 eventName 匹配) | 发送方携带的 data |
动作
触发器命中后执行的动作。本组件既可发起动作(配在自己的交互里),也可作为其它组件动作的目标。
| 动作 | 名称 | 说明 |
|---|---|---|
changeOption | 修改设置 | 把本组件(或其它组件)的某个属性改为静态值 / 公式动态值 |
switchState | 切换状态 | 切到多状态里的某个状态(state:"" 回默认态) |
appear / disappear | 进 / 退场动画 | 对目标 opacity 做 0↔100 插值的显隐动画 |
完整动作清单(switchScreen / switchWindow / openUrl / sendBehaviorEvent / transfer / executeScript / requestApi 等)与持久化写法见事件交互。
示例
{
"type": "basic-timing",
"uid": "w_basic_timing",
"options": {
"position": [40, 40],
"size": [320, 80]
}
}变体示例:正计时(安全运行天数)
timing-mode: 'clockwise'+time-begin-mode: 'custom'从固定起点累加,timing-unit的最大单位吸收溢出(此处「DD天」承接所有整天数),常用于「安全运行 N 天」看板。