From c68edd388bbe518e9aa1958ce16d18a56eb86864 Mon Sep 17 00:00:00 2001 From: neverland Date: Sat, 12 Jan 2019 16:51:51 +0800 Subject: [PATCH] [improvement] DatetimePicker: jsx (#2510) --- .../datetime-picker/{index.vue => index.js} | 102 +++++++----------- packages/datetime-picker/utils.js | 29 +++++ 2 files changed, 67 insertions(+), 64 deletions(-) rename packages/datetime-picker/{index.vue => index.js} (81%) create mode 100644 packages/datetime-picker/utils.js diff --git a/packages/datetime-picker/index.vue b/packages/datetime-picker/index.js similarity index 81% rename from packages/datetime-picker/index.vue rename to packages/datetime-picker/index.js index 5d5379617..8b5fecaec 100644 --- a/packages/datetime-picker/index.vue +++ b/packages/datetime-picker/index.js @@ -1,66 +1,14 @@ - - - diff --git a/packages/datetime-picker/utils.js b/packages/datetime-picker/utils.js new file mode 100644 index 000000000..a153e6253 --- /dev/null +++ b/packages/datetime-picker/utils.js @@ -0,0 +1,29 @@ +export function isValidDate(date) { + return Object.prototype.toString.call(date) === '[object Date]' && !isNaN(date.getTime()); +} + +export function padZero(val) { + return `00${val}`.slice(-2); +} + +export function times(n, iteratee) { + let index = -1; + const result = Array(n); + + while (++index < n) { + result[index] = iteratee(index); + } + return result; +} + +export function getTrueValue(formattedValue) { + if (!formattedValue) return; + while (isNaN(parseInt(formattedValue, 10))) { + formattedValue = formattedValue.slice(1); + } + return parseInt(formattedValue, 10); +} + +export function getMonthEndDay(year, month) { + return 32 - new Date(year, month - 1, 32).getDate(); +}