Angular 日历组件 | ng-hub-ui-calendar
Angular 日历组件,支持事件视图、拖放、模板、国际化和 CSS 变量,适用于日程安排界面。
API 参考
这里是 calendar 的完整契约:你可以绑定、监听、投影和设置主题的一切,都集中在一处。接入你需要的部分,自定义你想要的样式——它是 standalone 的,且对 signal 友好。
输入
通过 6 个输入项精细调校 calendar。像绑定任意 Angular @Input 一样绑定它们。
| 名称 | 类型 | 默认值 | 描述 |
|---|---|---|---|
events | CalendarEvent<T>[] | [] | 要在日历上显示的事件数组 |
view | 'month' | 'week' | 'day' | 'year' | 'month' | 当前视图类型(与 viewChange 双向绑定) |
selectedDate | Date | new Date() | 当前聚焦的日期(与 dateChange 双向绑定) |
config | CalendarConfig | {} | 日历的配置选项 |
eventClass | string | ((event: CalendarEvent) => string) | undefined | 应用于事件的 CSS 类,可以是静态或动态的 |
weekStartsOn | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 0 | 一周的起始日(0 = 周日,1 = 周一,依此类推) |
输出
响应 calendar 的行为——有 5 个事件可供你挂接逻辑。
| 名称 | 类型 | 描述 |
|---|---|---|
eventClick | CalendarEvent<T> | 当事件被点击时触发 |
dayClick | CalendarDay<T> | 当日期单元格被点击时触发 |
eventDrop | { event: CalendarEvent<T>; newDate: Date; previousDate: Date } | 当事件被拖放到不同日期时触发 |
viewChange | CalendarViewType | 当视图类型变化时触发 |
dateChange | Date | 当导航改变所显示的日期时触发 |
模板
打造你自己的样式——2 个模板插槽让你可以投影自定义标记。
| 名称 | 描述 | 示例 |
|---|---|---|
eventTpt | 用于渲染单个事件的模板。上下文:{ event: CalendarEvent } | <ng-template eventTpt let-event="event">{{ event.title }}</ng-template> |
dayCellTpt | 用于自定义日期单元格渲染的模板。上下文:{ day: CalendarDay } | <ng-template dayCellTpt let-day="day">{{ day.date | date }}</ng-template> |
CSS 变量
尚未记录任何 CSS 变量。
样式与主题
尚未记录任何样式示例。本节将包含自定义方案和主题示例。