update DatePicker

update DatePicker
This commit is contained in:
梁灏 2016-12-16 09:18:35 +08:00
parent 344131a7af
commit 13be443453
4 changed files with 14 additions and 6 deletions

View file

@ -13,7 +13,10 @@
month: {
type: Number
},
disabledDate: {}
disabledDate: {},
selectionMode: {
default: 'month'
}
},
computed: {
classes () {
@ -36,7 +39,7 @@
const date = new Date(this.date);
date.setMonth(i);
cell.disabled = typeof this.disabledDate === 'function' && this.disabledDate(date);
cell.disabled = typeof this.disabledDate === 'function' && this.disabledDate(date) && this.selectionMode === 'month';
cell.selected = Number(this.month) === i;
cells.push(cell);

View file

@ -11,7 +11,10 @@
props: {
date: {},
year: {},
disabledDate: {}
disabledDate: {},
selectionMode: {
default: 'year'
}
},
computed: {
classes () {
@ -37,7 +40,7 @@
const date = new Date(this.date);
date.setFullYear(cell.text);
cell.disabled = typeof this.disabledDate === 'function' && this.disabledDate(date);
cell.disabled = typeof this.disabledDate === 'function' && this.disabledDate(date) && this.selectionMode === 'year';
cell.selected = Number(this.year) === cell.text;
cells.push(cell);

View file

@ -37,7 +37,6 @@
:month="month"
:date="date"
:value="value"
:week="week"
:selection-mode="selectionMode"
:disabled-date="disabledDate"
@on-pick="handleDatePick"></date-table>
@ -46,6 +45,7 @@
v-show="currentView === 'year'"
:year="year"
:date="date"
:selection-mode="selectionMode"
:disabled-date="disabledDate"
@on-pick="handleYearPick"></year-table>
<month-table
@ -53,6 +53,7 @@
v-show="currentView === 'month'"
:month="month"
:date="date"
:selection-mode="selectionMode"
:disabled-date="disabledDate"
@on-pick="handleMonthPick"></month-table>
</div>
@ -85,7 +86,6 @@
disabledDate: '',
year: null,
month: null,
week: null,
showWeekNumber: false,
timePickerVisible: false
}

View file

@ -29,6 +29,8 @@
// value: '',
options: {
disabledDate(time) {
// console.log(time)
// return time.getFullYear() < 2016;
return time.getTime() < Date.now() - 8.64e7;
// return time && time.valueOf() < Date.now();
}