id, title, type, feature, scope, locale, aliases, related_tools, related_pages, prerequisites, negative, last_verified
| id |
title |
type |
feature |
scope |
locale |
aliases |
related_tools |
related_pages |
prerequisites |
negative |
last_verified |
| calendar.timezone.concept |
日历的时区处理 |
concept |
calendar |
end-user |
zh |
| 日历时区 |
| 跨时区任务 |
| 不同地区看任务时间 |
| 时区不一样任务时间 |
| 国际团队日历 |
|
|
|
|
| 任务数据库无时区字段,时间按 UTC 存储 |
| 日历显示按用户当前浏览器的本地时区 |
| 同一任务在不同时区用户看到的时段会差几小时 |
|
v1.7.90 |
日历的时区处理
定义
DooTask 任务的 start_at / end_at 在数据库统一按 UTC 存储,但前端展示时按浏览器的本地时区呈现。日历组件也按这个规则渲染。所以跨时区的团队成员看到的同一任务时段可能不一样,但 UTC 真值一致。
显示规则
- 浏览器自动识别本地时区
- 日历事件块按
(start_at UTC) → 本地时区 的转换显示
- 日 / 周视图的时段标尺也按本地时区
- 用户切换电脑时区 / 出差 → 日历事件位置相应平移
时区选择器
- 日历组件支持显示时区切换器(
timezonesCollapsed=false)
- 在桌面端日历视图右上角可展开切换显示时区
- 切换显示时区只影响前端展示,不修改任务的 UTC 字段
跨时区团队的注意事项
- 北京同事建一个"今天 09:00"的任务(UTC 01:00)
- 巴黎同事(UTC+1)看到"今天 02:00"
- 旧金山同事(UTC-7)看到"今天前一天 18:00"
如果团队都用同一约定时区(如 UTC+8),任务时间会一致。
不支持
- 任务无 timezone 字段(不能为单个任务指定时区)
- 不能给"全公司"设固定时区
- 不能给日历事件标注"按某时区显示"
- 不支持时区随项目 / 用户偏好设置自动切换