Calendar 日历
展示日期。
基础用法
使用 value 指定当前展示的月份;未设置则展示当月。value 支持双向绑定。
2026 May
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
26 | 27 | 28 | 29 | 30 | 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 | 1 | 2 | 3 | 4 | 5 | 6 |
控制器类型
可设置日历头部的控制器类型;为 select 时可通过 formatter 自定义 label。
2026 May
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
26 | 27 | 28 | 29 | 30 | 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 | 1 | 2 | 3 | 4 | 5 | 6 |
自定义单元格内容
通过名为 date-cell 的作用域插槽自定义单元格展示。插槽作用域中可获取 date(当前单元格日期)、data(含 type、isSelected、day 等),详见下方 API。
2026 May
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
04-26 | 04-27 | 04-28 | 04-29 | 04-30 | 05-01 | 05-02 |
05-03 | 05-04 | 05-05 | 05-06 | 05-07 | 05-08 | 05-09 |
05-10 | 05-11 | 05-12 | 05-13 | 05-14 | 05-15 | 05-16 |
05-17 | 05-18 | 05-19 | 05-20 | 05-21 | 05-22 | 05-23 |
05-24 | 05-25 | 05-26 | 05-27 | 05-28 | 05-29 | 05-30 |
05-31 | 06-01 | 06-02 | 06-03 | 06-04 | 06-05 | 06-06 |
日期范围
使用 range 指定展示范围:开始须为周一,结束须为周日,跨度不超过两个月。
2019 March
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
自定义头部
Custom header content2026 May
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
26 | 27 | 28 | 29 | 30 | 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 | 1 | 2 | 3 | 4 | 5 | 6 |
国际化
默认语言为英文;若需其他语言请参考国际化。
日期时间相关文案(月份名、每周起始日等)也在本地化配置中设置。
日历 API
日历 属性
| 名称 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| model-value / v-model | 绑定值 | Date | — |
| range | 时间范围(起止);开始须为一周起始日,结束须为一周结束日,跨度不超过两个月 | array | — |
| controller-type | 日历头部控制器类型 | enum | button |
| formatter | controller-type 为 select 时格式化标签 | Function | — |
日历 插槽
| 名称 | 说明 |
|---|---|
| date-cell | 自定义日期单元格。作用域参数包含 date 与 data:其中 data.type 表示日期所属月份(prev-month、current-month、next-month);data.isSelected 为是否选中;data.day 为 YYYY-MM-DD 字符串;data.date 为 Date 对象。 |
| header | 日历头部内容;作用域参数包含字符串 date。 |
日历 暴露
| 名称 | 说明 | 类型 |
|---|---|---|
| selectedDay | 当前选中日期 | object |
| pickDay | 选中指定日期 | Function |
| selectDate | 按类型切换日期 | Function |
| calculateValidatedDateRange | 根据起止日期计算合法范围 | Function |
类型声明
展开类型声明
ts
type CalendarDateType =
| 'prev-month'
| 'next-month'
| 'prev-year'
| 'next-year'
| 'today'