Commit 2537c26d18f5c924087e9a45f6c8ae5bf59702a8
1 parent
b27858dd
add dateLabel to time panel
Showing
1 changed file
with
13 additions
and
15 deletions
Show diff stats
src/components/date-picker/panel/time-range.vue
| @@ -3,7 +3,7 @@ | @@ -3,7 +3,7 @@ | ||
| 3 | <div :class="[prefixCls + '-body']"> | 3 | <div :class="[prefixCls + '-body']"> |
| 4 | <div :class="[prefixCls + '-content', prefixCls + '-content-left']"> | 4 | <div :class="[prefixCls + '-content', prefixCls + '-content-left']"> |
| 5 | <div :class="[timePrefixCls + '-header']"> | 5 | <div :class="[timePrefixCls + '-header']"> |
| 6 | - <template v-if="showDate">{{ visibleDate }}</template> | 6 | + <template v-if="showDate">{{ leftDatePanelLabel }}</template> |
| 7 | <template v-else>{{ t('i.datepicker.startTime') }}</template> | 7 | <template v-else>{{ t('i.datepicker.startTime') }}</template> |
| 8 | </div> | 8 | </div> |
| 9 | <time-spinner | 9 | <time-spinner |
| @@ -21,7 +21,7 @@ | @@ -21,7 +21,7 @@ | ||
| 21 | </div> | 21 | </div> |
| 22 | <div :class="[prefixCls + '-content', prefixCls + '-content-right']"> | 22 | <div :class="[prefixCls + '-content', prefixCls + '-content-right']"> |
| 23 | <div :class="[timePrefixCls + '-header']"> | 23 | <div :class="[timePrefixCls + '-header']"> |
| 24 | - <template v-if="showDate">{{ visibleDateEnd }}</template> | 24 | + <template v-if="showDate">{{ rightDatePanelLabel }}</template> |
| 25 | <template v-else>{{ t('i.datepicker.endTime') }}</template> | 25 | <template v-else>{{ t('i.datepicker.endTime') }}</template> |
| 26 | </div> | 26 | </div> |
| 27 | <time-spinner | 27 | <time-spinner |
| @@ -51,7 +51,7 @@ | @@ -51,7 +51,7 @@ | ||
| 51 | import Mixin from './mixin'; | 51 | import Mixin from './mixin'; |
| 52 | import Locale from '../../../mixins/locale'; | 52 | import Locale from '../../../mixins/locale'; |
| 53 | 53 | ||
| 54 | - import { initTimeDate, toDate, formatDate } from '../util'; | 54 | + import { initTimeDate, toDate, formatDate, formatDateLabels } from '../util'; |
| 55 | 55 | ||
| 56 | const prefixCls = 'ivu-picker-panel'; | 56 | const prefixCls = 'ivu-picker-panel'; |
| 57 | const timePrefixCls = 'ivu-time-picker'; | 57 | const timePrefixCls = 'ivu-time-picker'; |
| @@ -95,19 +95,11 @@ | @@ -95,19 +95,11 @@ | ||
| 95 | showSeconds () { | 95 | showSeconds () { |
| 96 | return (this.format || '').indexOf('ss') !== -1; | 96 | return (this.format || '').indexOf('ss') !== -1; |
| 97 | }, | 97 | }, |
| 98 | - visibleDate () { | ||
| 99 | - const date = this.date || initTimeDate(); | ||
| 100 | - const tYear = this.t('i.datepicker.year'); | ||
| 101 | - const month = date.getMonth() + 1; | ||
| 102 | - const tMonth = this.t(`i.datepicker.month${month}`); | ||
| 103 | - return `${date.getFullYear()}${tYear} ${tMonth}`; | 98 | + leftDatePanelLabel () { |
| 99 | + return this.panelLabelConfig(this.date); | ||
| 104 | }, | 100 | }, |
| 105 | - visibleDateEnd () { | ||
| 106 | - const date = this.dateEnd || initTimeDate(); | ||
| 107 | - const tYear = this.t('i.datepicker.year'); | ||
| 108 | - const month = date.getMonth() + 1; | ||
| 109 | - const tMonth = this.t(`i.datepicker.month${month}`); | ||
| 110 | - return `${date.getFullYear()}${tYear} ${tMonth}`; | 101 | + rightDatePanelLabel () { |
| 102 | + return this.panelLabelConfig(this.dateEnd); | ||
| 111 | } | 103 | } |
| 112 | }, | 104 | }, |
| 113 | watch: { | 105 | watch: { |
| @@ -136,6 +128,12 @@ | @@ -136,6 +128,12 @@ | ||
| 136 | } | 128 | } |
| 137 | }, | 129 | }, |
| 138 | methods: { | 130 | methods: { |
| 131 | + panelLabelConfig (date) { | ||
| 132 | + const locale = this.t('i.locale'); | ||
| 133 | + const datePanelLabel = this.t('i.datepicker.datePanelLabel'); | ||
| 134 | + const { labels, separator } = formatDateLabels(locale, datePanelLabel, date || initTimeDate()); | ||
| 135 | + return [labels[0].label, separator, labels[1].label].join(''); | ||
| 136 | + }, | ||
| 139 | handleClear() { | 137 | handleClear() { |
| 140 | this.date = initTimeDate(); | 138 | this.date = initTimeDate(); |
| 141 | this.dateEnd = initTimeDate(); | 139 | this.dateEnd = initTimeDate(); |