Commit 43bb065e authored by cinwell.li's avatar cinwell.li Committed by baiyaaaaa

DatePicker: fix format week, fixed #2774 (#3687)

parent 0409c639
...@@ -296,14 +296,8 @@ ...@@ -296,14 +296,8 @@
this.date.setMonth(value.getMonth()); this.date.setMonth(value.getMonth());
this.date.setDate(value.getDate()); this.date.setDate(value.getDate());
} else if (this.selectionMode === 'week') { } else if (this.selectionMode === 'week') {
let date = formatDate(value.date, this.format || 'yyyywWW'); this.week = value.week;
const week = this.week = value.week; this.$emit('pick', value.date);
date = /WW/.test(date)
? date.replace(/WW/, week < 10 ? '0' + week : week)
: date.replace(/W/, week);
this.$emit('pick', date);
} }
this.resetDate(); this.resetDate();
......
...@@ -49,6 +49,7 @@ const DEFAULT_FORMATS = { ...@@ -49,6 +49,7 @@ const DEFAULT_FORMATS = {
month: 'yyyy-MM', month: 'yyyy-MM',
datetime: 'yyyy-MM-dd HH:mm:ss', datetime: 'yyyy-MM-dd HH:mm:ss',
time: 'HH:mm:ss', time: 'HH:mm:ss',
week: 'yyyywWW',
timerange: 'HH:mm:ss', timerange: 'HH:mm:ss',
daterange: 'yyyy-MM-dd', daterange: 'yyyy-MM-dd',
datetimerange: 'yyyy-MM-dd HH:mm:ss', datetimerange: 'yyyy-MM-dd HH:mm:ss',
...@@ -105,12 +106,14 @@ const TYPE_VALUE_RESOLVER_MAP = { ...@@ -105,12 +106,14 @@ const TYPE_VALUE_RESOLVER_MAP = {
} }
}, },
week: { week: {
formatter(value) { formatter(value, format) {
if (value instanceof Date) { let date = formatDate(value, format);
const weekNumber = getWeekNumber(value); const week = getWeekNumber(value);
return value.getFullYear() + 'w' + (weekNumber > 9 ? weekNumber : '0' + weekNumber);
} date = /WW/.test(date)
return value; ? date.replace(/WW/, week < 10 ? '0' + week : week)
: date.replace(/W/, week);
return date;
}, },
parser(text) { parser(text) {
const array = (text || '').split('w'); const array = (text || '').split('w');
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment