@fieldia/calendar

中文文档
0.36.1发布于 2026/10/28MITTypeScriptESM + CJS近 30 天下载 3824

Fieldia的日历:按日,周,月或作为日程排列的列表记录,每个人或房间的一栏,被拖放或从键盘上移动. 仅在显示日历时装入 .

中文使用文档
文档目录4 节
  1. 页面
  2. 一个人能做什么
  3. 数据来源
  4. 设置

@fieldia/日历

外地日历: a 日历上的列表记录, (中文(简体) ), 或作为一个议程,为每个人或房间各设一栏. 人们拖出一个记录来移动它,拖出它的尾部来拉伸它,按出一个空的 从键盘中移动一个 移动到..一个动作是 通过数据源的 save,与 撤销它分享名单 搜索 过滤器和最爱 右到左读 说英语 阿拉伯语, 法语和德语——以及土耳其语、波斯语、乌尔都语和西班牙语,机器辅助, 尚未由讲母语的人加以审查——及其守则,以及其中的文字 语言,但英语,只有在日历首次显示时才加载.

npm install @fieldia/calendar
import { mountViewer } from '@fieldia/viewer';
import { calendarListViews } from '@fieldia/calendar';

mountViewer(host, {
  page,
  dataSource,
  listViews: calendarListViews(),
  // A slot pressed: the app opens a new record with its start and end filled in.
  onNewRecord: (values) => openNewAppointment(values),
});

还有一张地图,登记两个: listViews: { ...mapListViews({ provider }), ...calendarListViews() }。 。 。 .

页面

列表页 calendar 提议 日历 在会议桌旁:

"layout": {
  "type": "list", "id": "appointments", "columns": ["patient", "start", "doctor"],
  "calendar": {
    "start": "start", "end": "stop", "title": "patient",
    "colour": "service", "resource": "doctor",
    "views": ["day", "week", "month", "agenda"], "view": "day", "opens": "calendar",
    "firstDay": 6, "hours": { "start": 8, "end": 20 }, "slot": 15
  }
}
选项它会做什么
start每个记录开始时: a date (这需要一整天)或者 datetime要求.
end当它结束的时候,一个相同的领域。 没有它,记录将持续一个小时(一天,一个日期),是无法伸展的.
title每录所出之言. 要求.
colour一个字段,其值为每个记录的颜色:同值,同色. 表示颜色本身的值( E)#0f766e)用如来.
resource每个记录与谁或什么,一个链接,一个选择,一个文本或一个整数:日视图对每个记录都有一栏,一个记录被拖到另一个一栏修改.
views所提出的意见如下: day, (中文(简体) ), week, (中文(简体) ), month, (中文(简体) ), agenda所有四个,除非说.
view它首先显示的是: views 除非说。 在电话里,它打开了议程.
openscalendar 打开日历上的列表; list 在他的桌子上.
firstDay这周的第一天, 0 周日到 6 星期六: " R " 为该区域开始,除非说:firstWeekday:页面属于自己,否则读者的浏览器用一个(一个)来要求页面的语言 en 页面读入 en-EG: 星期六, (笑声), en-GB:星期一),其他最通用语:阿拉伯语和波斯语的星期六;英语的星期日(英语:en乌尔都语、德语、法语、土耳其语和西班牙语.
hours白天和星期显示的时间, 0 改为 24:8到20,除非说。 在他们外边的唱片会让他们伸展.
slot拖动的分数和一个分数 15, (中文(简体) ), 30 (除非说)或 60。 。 。 .

在一个区的时钟. 日历在区域时钟上开始 字段名称 (timeZone 在日期和时间字段上),否则其页面 (单位:千美元)"timeZone": "Europe/Berlin"),或者读者自己的. 它的一周,今天 每一张唱片都保持了几个小时 现在的线是那个区域 不管它在哪里 从,它的短名 ("CEST") 的跨度,它不是 读取器本身; 按下一个插槽, 拖放, 伸展并移动到... 写即时 时间已经到来 记录的移动能保持持续的时间 换个钟表 时钟重现,时间是第一个 2;在他们跳过的时间,它已经过了变化(02:30是03:30).

页面检查拒绝页面缺少的字段或错误的字段, 结束 另一种,不是开始,a view 不属于 views时数 在他们开始之前就结束.

在标明记录的一页上("records": { "one": "appointment", "other": "appointments" }),新说"新约",一档"一" 并输入"在那里重新预约".

一个人能做什么

  • 见 周(日数相接,时数相接),日数相接(每行一列) 个人或房间,当页面名称 a resource,用于记录 ),整个星期的月份(加上"再加2"一天拥挤) 和议程, 开会的记录 如果列的宽度可以显示一个列的起步 名称; 过此句后, “+N more” 将打开全部列表。 整整一天 记录坐在一行 数小时。 现在有一个红线标记.
  • 移动 通过拖到另一个时间、日或人的记录 缩放 它通过拖取它的下边缘。 拖曳时逃跑或 伸展后,在拖过空位时逃跑 没什么 移动立即被保存; 撤销 把枪放回去.
  • 制作 记录,按下一个空位——一个也走了: 选择了它,或者拖入它应该花的时间,或者与 新设: 在插槽上键位, 否则从现在开始下一次空闲时间 日历的时钟,圆为 slot,在其范围内 hours无 它的记录是(在所显示的期间内)的。 应用程序 onNewRecord 获得值(开始、结束、人物)。 没有它,观众打开记录的一页 从 pages 在对话中; 与两者都一样, 没有什么可以做出一个.
  • 打开 按下记录,或 Enter: app's onOpenRecord作为 桌子的行打开它.
  • 密钥:箭头键在天数和插槽之间移动(右倾到 ),“上下页”更改周;在空位上输入 记录在那里; 在记录中, Enter 打开它和 M( 或 Shift+F10) 打开 移动到..,一个小形式 对于它的一天, 它的时间和人。 它拒绝 从记录本身算起超过10年的一天(一年打入26个或 2062),并用动名后所取之词来表示变化之年. 当 记录留下了显示的日子, 钥匙站在 走向它的一天. 每个插槽和每个记录都向屏幕阅读器说明它是什么.

不能做的事情是隐藏的,永远不灰:没有 save 关于数据来源, 开始、结束或人物字段为 readonly,不移动;a 记录其列表行表示 can: { edit: false },或将其开始、结束或 人员 can.readonlyFields 或者说 can.hiddenFields时,保持原地 说为什么(can.reason) (中文(简体) ).

数据来源

日历问 list 记录它显示的跨度,与列表的 自己的搜索 :

filter: [...search, { field: 'start', op: '<', value: spanEnd }, { any: [{ field: 'stop', op: '>', value: spanStart }, { field: 'start', op: '>=', value: spanStart }] }]

A 类 date 比较 "2026-10-14"页:1 datetime 作为ISO 瞬间 (单位:千美元)toISOString()),如日期部件写出。 时代是读者自己的; 他们自己的时区晚点来 移动电话 save 改为 字段单词,在 changes.values 内 values, (中文(简体) ), fields 单独命名 财务报告和审定财务报表 partial: true (还有这行) version,当列表给出了一个),所以 保存完整记录的源 。 撤销保存这些内容 原地也一样 被拒绝的保存会记录 回去说为什么 在日景中,链接的柱子是相关的 记录 search 发现(最多40个),除此之外还有记录.

设置

calendarListViews({ labels, now, limit })数字 :

  • labels: 日历上的单词,按语文分列(CalendarLabels 统统点名).
  • now: 此时此刻, 用于演示或测试.
  • limit: 最多需要多少个记录, 除非说。 过去 日历上说它漏掉了多少.

麻省理工学院有执照.

版本与发布记录

@fieldia/calendar 共发布 24 个版本,首次发布于 2026/10/16;过去 12 个月发布了 24 个版本。

版本发布日期距今
0.36.1latest2026/10/2817 天前
0.36.02026/10/2817 天前
0.35.32026/10/2818 天前
0.35.22026/10/2718 天前
0.35.12026/10/2619 天前
0.35.02026/10/2619 天前

关于 @fieldia/calendar 的常见问题

@fieldia/calendar 是什么?

Fieldia的日历:按日,周,月或作为日程排列的列表记录,每个人或房间的一栏,被拖放或从键盘上移动. 仅在显示日历时装入 .

如何安装 @fieldia/calendar?

在项目目录运行 npm install @fieldia/calendar,或使用 pnpm add / yarn add / bun add。

@fieldia/calendar 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@fieldia/calendar 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@fieldia/calendar 可以商用吗?

@fieldia/calendar 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@fieldia/calendar 的下载量有多少?

根据 npm 官方下载统计,@fieldia/calendar 在 2026/10/15 – 2026/11/13 这 30 天内被下载 3,824 次,日均约 127 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@fieldia/calendar 还在维护吗?

最新版本 0.36.1 发布于 2026/10/28(17 天前);至今共发布 24 个版本,其中过去 12 个月发布了 24 个;首次发布于 2026/10/16。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。