Calendar 日历

按照日历形式展示数据的容器。

何时使用

当数据是日期或按照日期划分时,例如日程、课表、价格日历等,农历等。目前支持年/月切换。

代码演示

2025年
6月
26
27
28
29
30
31
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
01
02
03
04
05
06

基本

一个通用的日历面板,支持年/月切换。

expand code expand code
2025年
6月
26
27
28
29
30
31
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
01
02
03
04
05
06

卡片模式

用于嵌套在空间有限的容器中。

expand code expand code
2025年
6月
26
    27
      28
        29
          30
            31
              01
                02
                  03
                    04
                      05
                        06
                          07
                            08
                            • This is warning event.
                            • This is usual event.
                            09
                              10
                              • This is warning event.
                              • This is usual event.
                              • This is error event.
                              11
                                12
                                  13
                                    14
                                      15
                                      • This is warning event
                                      • This is very long usual event。。....
                                      • This is error event 1.
                                      • This is error event 2.
                                      • This is error event 3.
                                      • This is error event 4.
                                      16
                                        17
                                          18
                                            19
                                              20
                                                21
                                                  22
                                                    23
                                                      24
                                                        25
                                                          26
                                                            27
                                                              28
                                                                29
                                                                  30
                                                                    01
                                                                      02
                                                                        03
                                                                          04
                                                                            05
                                                                              06

                                                                                通知事项日历

                                                                                一个复杂的应用示例,用 dateCellRendermonthCellRender 函数来自定义需要渲染的数据。

                                                                                expand code expand code
                                                                                You selected date: 2017-01-25
                                                                                2017年
                                                                                1月
                                                                                26
                                                                                27
                                                                                28
                                                                                29
                                                                                30
                                                                                31
                                                                                01
                                                                                02
                                                                                03
                                                                                04
                                                                                05
                                                                                06
                                                                                07
                                                                                08
                                                                                09
                                                                                10
                                                                                11
                                                                                12
                                                                                13
                                                                                14
                                                                                15
                                                                                16
                                                                                17
                                                                                18
                                                                                19
                                                                                20
                                                                                21
                                                                                22
                                                                                23
                                                                                24
                                                                                25
                                                                                26
                                                                                27
                                                                                28
                                                                                29
                                                                                30
                                                                                31
                                                                                01
                                                                                02
                                                                                03
                                                                                04
                                                                                05
                                                                                2017年
                                                                                1月
                                                                                26
                                                                                27
                                                                                28
                                                                                29
                                                                                30
                                                                                31
                                                                                01
                                                                                02
                                                                                03
                                                                                04
                                                                                05
                                                                                06
                                                                                07
                                                                                08
                                                                                09
                                                                                10
                                                                                11
                                                                                12
                                                                                13
                                                                                14
                                                                                15
                                                                                16
                                                                                17
                                                                                18
                                                                                19
                                                                                20
                                                                                21
                                                                                22
                                                                                23
                                                                                24
                                                                                25
                                                                                26
                                                                                27
                                                                                28
                                                                                29
                                                                                30
                                                                                31
                                                                                01
                                                                                02
                                                                                03
                                                                                04
                                                                                05

                                                                                选择功能

                                                                                一个通用的日历面板,支持年/月切换。

                                                                                expand code expand code

                                                                                API

                                                                                **注意:**Calendar 部分 locale 是从 value 中读取,所以请先正确设置 moment 的 locale。

                                                                                // 默认语言为 en-US,所以如果需要使用其他语言,推荐在入口文件全局设置 locale
                                                                                // import moment from 'moment';
                                                                                // import 'moment/locale/zh-cn';
                                                                                // moment.locale('zh-cn');
                                                                                
                                                                                <a-calendar
                                                                                  @panelChange="onPanelChange"
                                                                                  @select="onSelect"
                                                                                >
                                                                                  <template slot="dateCellRender" slot-scope="value"></template>
                                                                                  <template slot="monthCellRender" slot-scope="value"></template>
                                                                                </a-calendar>
                                                                                
                                                                                参数 说明 类型 默认值
                                                                                dateCellRender 作用域插槽,用来自定义渲染日期单元格,返回内容会被追加到单元格, function(date: moment)
                                                                                dateFullCellRender 作用域插槽,自定义渲染日期单元格,返回内容覆盖单元格 function(date: moment)
                                                                                defaultValue 默认展示的日期 moment 默认日期
                                                                                disabledDate 不可选择的日期 (currentDate: moment) => boolean
                                                                                fullscreen 是否全屏显示 boolean true
                                                                                locale 国际化配置 object 默认配置
                                                                                mode 初始模式,month/year string month
                                                                                monthCellRender 作用域插槽,自定义渲染月单元格,返回内容会被追加到单元格 function(date: moment)
                                                                                monthFullCellRender 作用域插槽,自定义渲染月单元格,返回内容覆盖单元格 function(date: moment)
                                                                                validRange 设置可以显示的日期 [moment, moment]
                                                                                value(v-model) 展示日期 moment 当前日期

                                                                                事件

                                                                                事件名称 说明 回调参数
                                                                                panelChange 日期面板变化回调 function(date: moment, mode: string)
                                                                                select 点击选择日期回调 function(date: moment)
                                                                                change 日期变化时的回调, 面板变化有可能导致日期变化 function(date: moment)
                                                                                  Badge 徽标数Card 卡片