Tui

TsCalendar 日历组件
提供日历、日历选择器、月份选择器、数据拓展渲染、悬浮窗等功能的日历展示组件。
基础用法
展示一个最简单的日历组件。
2026年
4月
回到今天
示例代码
vue
默认选中与阴影
设置 defaultValue 选中某一天,并开启 shadow 阴影。
2026年
4月
回到今天
示例代码
vue
显示月份详情
通过 changeonMonthChange 获取月份详情数据来打造自己的个性化月份数据展示。
2026年
4月
回到今天
本月假期天数 天
本月工作天数 天
示例代码
vue
开启悬浮提示
通过 showTooltip 开启 hover 悬浮提示内容。或者 CalendarDay enableTip 字段精细到每一天开启。
2026年
4月
回到今天
示例代码
vue
extensions数据渲染
通过 extensions 传入自定义节假日数据,渲染名称、状态等信息。
2026年
4月
回到今天
示例代码
vue
属性 Props
属性名
说明
类型
可选值
默认值
版本说明
defaultValue
当前选中日期
string | Date | null
null
showTooltip
是否显示提示
boolean
true / false
false
tooltipOffset
提示框偏移量,基于最终渲染位置进行位移
[number, number]
-
[0, -5]
shadow
是否显示阴影边框
boolean | string | null
true / "" / null
false
extensions
年假数据
CalendarExtensions
{}
added 0.3.9
externalCalendarMap
年假数据
ExternalCalendarMap
{}
deprecated 0.3.9
事件 Events
事件名
说明
回调参数
版本说明
change
选中日期
(value: CalendarDay, isInit: boolean) => void
onMonthChange
选中日期
(value: MonthChangePayload) => void
插槽 Slots
插槽名
说明
版本说明
tooltip
自定义 tooltip 内容
CalendarExtensions Type
属性名
说明
类型
格式
可选值
默认值
year
年份
string
YYYY
[year: string]: { [month in Month]?: ExternalDay[]; }
CalendarDay Type
属性名
说明
类型
格式
可选值
默认值
date
年份,例如2025-10-05
string
YYYY-MM-DD
-
name
显示名称,例如“国庆节”
string
-
type
控制样式/标签
CalendarStatus
normal / holiday / workday / weekend
badgeText
右上角标签
string
-
tooltip
是否显示悬浮提示
boolean
-
tooltipText
悬浮提示
string
-
lunarName
农历名称
string
-
CalendarDay extends ExternalDay Type
属性名
说明
类型
格式
可选值
默认值
year
年份
string
YYYY
-
month
月份
string
MM
-
day
日期
number
DD
-
week
星期
number
1~7
nameCn
中文名称
string
-
yearCn
中文年份日期
string
-
monthCn
中文月份日期
string
-
dayCn
中文日期
string
-
animal
生肖
string
-
term
节气
boolean
-
MonthChangePayload Type
属性名
说明
类型
格式
可选值
默认值
year
年份
string
YYYY
-
month
月份
string
MM
-
monthDays
当前月所有日期(已经合并外部标记)
CalendarDay[]
-
基础用法
默认选中与阴影
显示月份详情
开启悬浮提示
extensions数据渲染
属性 Props
事件 Events
插槽 Slots
CalendarExtensions Type
CalendarDay Type
CalendarDay extends ExternalDay Type
MonthChangePayload Type