DatePicker: 修复 DatePicker 日期选择器 属性的cellClassName属性值在显示类型为 year/month 时无效

pull/22704/head
王明华 2023-10-18 11:32:56 +08:00
parent 290e68ea6a
commit 96d115dbdf
3 changed files with 14 additions and 0 deletions

View File

@ -48,6 +48,7 @@
export default {
props: {
disabledDate: {},
cellClassName: {},
value: {},
selectionMode: {
default: 'month'
@ -130,6 +131,11 @@
style['end-date'] = true;
}
}
if (typeof this.cellClassName === 'function') {
const customClass = this.cellClassName(new Date(year, month, 1));
customClass && (style[customClass] = true);
style[customClass] = !!customClass;
}
return style;
},
getMonthOfCell(month) {

View File

@ -57,6 +57,7 @@
export default {
props: {
disabledDate: {},
cellClassName: {},
value: {},
defaultValue: {
validator(val) {
@ -85,6 +86,11 @@
style.current = arrayFindIndex(coerceTruthyValueToArray(this.value), date => date.getFullYear() === year) >= 0;
style.today = today.getFullYear() === year;
style.default = this.defaultValue && this.defaultValue.getFullYear() === year;
if (typeof this.cellClassName === 'function') {
const customClass = this.cellClassName(new Date(year, 0));
customClass && (style[customClass] = true);
style[customClass] = !!customClass;
}
return style;
},

View File

@ -106,6 +106,7 @@
:value="value"
:default-value="defaultValue ? new Date(defaultValue) : null"
:date="date"
:cell-class-name="cellClassName"
:disabled-date="disabledDate">
</year-table>
<month-table
@ -115,6 +116,7 @@
:value="value"
:default-value="defaultValue ? new Date(defaultValue) : null"
:date="date"
:cell-class-name="cellClassName"
:disabled-date="disabledDate">
</month-table>
</div>