mirror of
https://github.com/tenrok/vue2-datepicker.git
synced 2026-06-23 10:20:35 +03:00
fix: when select time picker option close popup (#154)
This commit is contained in:
+6
-2
@@ -64,7 +64,8 @@
|
|||||||
:value="value"
|
:value="value"
|
||||||
:disabled-time="isDisabledTime"
|
:disabled-time="isDisabledTime"
|
||||||
:time-type="timeType"
|
:time-type="timeType"
|
||||||
@select="selectTime" />
|
@select="selectTime"
|
||||||
|
@pick="pickTime" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -323,7 +324,10 @@ export default {
|
|||||||
this.showPanelDate()
|
this.showPanelDate()
|
||||||
},
|
},
|
||||||
selectTime (time) {
|
selectTime (time) {
|
||||||
this.$emit('select-time', time)
|
this.$emit('select-time', time, false)
|
||||||
|
},
|
||||||
|
pickTime (time) {
|
||||||
|
this.$emit('select-time', time, true)
|
||||||
},
|
},
|
||||||
changeCalendarYear (year) {
|
changeCalendarYear (year) {
|
||||||
this.now = new Date(year, this.calendarMonth)
|
this.now = new Date(year, this.calendarMonth)
|
||||||
|
|||||||
+2
-2
@@ -365,9 +365,9 @@ export default {
|
|||||||
this.updateDate()
|
this.updateDate()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
selectTime (time) {
|
selectTime (time, close) {
|
||||||
this.currentValue = time
|
this.currentValue = time
|
||||||
this.updateDate()
|
this.updateDate() && close && this.closePopup()
|
||||||
},
|
},
|
||||||
selectStartTime (time) {
|
selectStartTime (time) {
|
||||||
this.selectStartDate(time)
|
this.selectStartDate(time)
|
||||||
|
|||||||
+7
-1
@@ -44,6 +44,12 @@ export default {
|
|||||||
}
|
}
|
||||||
this.$emit('select', new Date(time))
|
this.$emit('select', new Date(time))
|
||||||
},
|
},
|
||||||
|
pickTime (time) {
|
||||||
|
if (typeof this.disabledTime === 'function' && this.disabledTime(time)) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.$emit('pick', new Date(time))
|
||||||
|
},
|
||||||
getTimeSelectOptions () {
|
getTimeSelectOptions () {
|
||||||
const result = []
|
const result = []
|
||||||
const options = this.timePickerOptions
|
const options = this.timePickerOptions
|
||||||
@@ -96,7 +102,7 @@ export default {
|
|||||||
'actived': pickHours === this.currentHours && pickMinutes === this.currentMinutes,
|
'actived': pickHours === this.currentHours && pickMinutes === this.currentMinutes,
|
||||||
'disabled': disabledTime && disabledTime(time)
|
'disabled': disabledTime && disabledTime(time)
|
||||||
}}
|
}}
|
||||||
onClick={this.selectTime.bind(this, time)}>{picker.label}</li>
|
onClick={this.pickTime.bind(this, time)}>{picker.label}</li>
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
return (
|
return (
|
||||||
|
|||||||
+1
-1
@@ -609,7 +609,7 @@ describe('time-panel', () => {
|
|||||||
cells.at(0).trigger('click')
|
cells.at(0).trigger('click')
|
||||||
const emitted = wrapper.emitted()
|
const emitted = wrapper.emitted()
|
||||||
expect(emitted).toEqual({
|
expect(emitted).toEqual({
|
||||||
select: [[new Date(2018, 5, 5, 1)]]
|
pick: [[new Date(2018, 5, 5, 1)]]
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user