diff --git a/datepicker/calendar-panel.vue b/datepicker/calendar-panel.vue index 5607d98..d3ee5a1 100644 --- a/datepicker/calendar-panel.vue +++ b/datepicker/calendar-panel.vue @@ -4,7 +4,7 @@ « » - + {{months[currentMonth]}} {{currentYear}} @@ -17,10 +17,7 @@ - {{cell.day}} + {{cell.day}} @@ -107,14 +104,12 @@ export default { const date = new Date(time.getFullYear(), time.getMonth(), day, 0, 0, 0) return { title: date.toLocaleDateString(), - iso: cal.isoDate(date), date, day, classes } }) } - var cal = this; const time = new Date(this.now) time.setDate(0) // 把时间切换到上个月最后一天 const lastMonthLength = time.getDay() + 1 // time.getDay() 0是星期天, 1是星期一 ... @@ -139,15 +134,6 @@ export default { } this.dates = result }, - isoDate(date) { - function doubleDigits(num) { - if ( parseInt(num) < 10 ) { - return '0'+num; - } - return num; - } - return date.getFullYear()+'-'+doubleDigits((date.getMonth()+1))+'-'+doubleDigits(date.getDate()); - }, getClasses (cell) { const classes = [] const cellTime = cell.date.getTime() @@ -158,13 +144,10 @@ export default { classes.push(cell.classes) - if ( typeof this.disabledDays.find(function(disabledDate) { return disabledDate === cell.iso } ) !== 'undefined' ) { - classes.push('disabled'); - } else if ( + if (this.disabledDays.some(v => +new Date(v) === +cell.date) || (this.notBefore !== '' && cell.date.getTime() < (new Date(this.notBefore)).getTime()) || - (this.notAfter !== '' && cell.date.getTime() > (new Date(this.notAfter+' 00:00:00')).getTime()) - ) { - classes.push('disabled'); + (this.notAfter !== '' && cell.date.getTime() > (new Date(this.notAfter)).getTime())) { + classes.push('disabled') } if (cellTime === today) { @@ -250,7 +233,6 @@ export default {