Merge pull request #3353 from SergioCrisostomo/show-changed-part

Expose changed date component
This commit is contained in:
Aresn 2018-04-16 10:54:32 +08:00 committed by GitHub
commit b0794170c4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 14 additions and 14 deletions

View file

@ -317,7 +317,7 @@
this.changePanelDate(otherPanel, 'Month', 1, false);
}
},
handleRangePick (val) {
handleRangePick (val, type) {
if (this.rangeState.selecting || this.currentView === 'time'){
if (this.currentView === 'time'){
this.dates = val;
@ -330,7 +330,7 @@
selecting: false
};
}
this.handleConfirm(false);
this.handleConfirm(false, type || 'date');
} else {
this.rangeState = {
from: val,

View file

@ -188,14 +188,14 @@
else this.pickerTable = this.getTableType(this.currentView);
},
handlePick (value) {
handlePick (value, type) {
const {selectionMode, panelDate} = this;
if (selectionMode === 'year') value = new Date(value.getFullYear(), 0, 1);
else if (selectionMode === 'month') value = new Date(panelDate.getFullYear(), value.getMonth(), 1);
else value = new Date(value);
this.dates = [value];
this.$emit('on-pick', value);
this.$emit('on-pick', value, false, type || selectionMode);
},
},
};

View file

@ -142,7 +142,7 @@
// judge endTime > startTime?
if (dateEnd < dateStart) dateEnd = dateStart;
if (emit) this.$emit('on-pick', [dateStart, dateEnd], true);
if (emit) this.$emit('on-pick', [dateStart, dateEnd], 'time');
},
handleStartChange (date) {
this.handleChange(date, {});

View file

@ -135,7 +135,7 @@
type => newDate[`set${capitalize(type)}`](date[type])
);
if (emit) this.$emit('on-pick', newDate, true);
if (emit) this.$emit('on-pick', newDate, 'time');
},
},
mounted () {

View file

@ -44,8 +44,8 @@ export default {
this.handleConfirm();
// if (this.showTime) this.$refs.timePicker.handleClear();
},
handleConfirm(visible) {
this.$emit('on-pick', this.dates, visible);
handleConfirm(visible, type) {
this.$emit('on-pick', this.dates, visible, type || this.type);
},
onToggleVisibility(open){
const {timeSpinner, timeSpinnerEnd} = this.$refs;

View file

@ -272,7 +272,7 @@
const isValidDate = newDate.reduce((valid, date) => valid && date instanceof Date, true);
if (newValue !== oldValue && !isDisabled && isValidDate) {
this.emitChange();
this.emitChange(this.type);
this.internalValue = newDate;
} else {
this.forceInputRerender++;
@ -299,7 +299,7 @@
this.internalValue = this.internalValue.map(() => null);
this.$emit('on-clear');
this.dispatch('FormItem', 'on-form-change', '');
this.emitChange();
this.emitChange(this.type);
this.reset();
setTimeout(
@ -307,9 +307,9 @@
500 // delay to improve dropdown close visual effect
);
},
emitChange () {
emitChange (type) {
this.$nextTick(() => {
this.$emit('on-change', this.publicStringValue);
this.$emit('on-change', this.publicStringValue, type);
this.dispatch('FormItem', 'on-form-change', this.publicStringValue);
});
},
@ -366,7 +366,7 @@
return formatter(value, this.format || format);
}
},
onPick(dates, visible = false) {
onPick(dates, visible = false, type) {
if (this.multiple){
const pickedTimeStamp = dates.getTime();
const indexOfPickedDate = this.internalValue.findIndex(date => date && date.getTime() === pickedTimeStamp);
@ -379,7 +379,7 @@
if (!this.isConfirm) this.onSelectionModeChange(this.type); // reset the selectionMode
if (!this.isConfirm) this.visible = visible;
this.emitChange();
this.emitChange(type);
},
onPickSuccess(){
this.visible = false;