From 66613f0373c7fb5e5673a2890b1b435c061a4b04 Mon Sep 17 00:00:00 2001 From: Pan Date: Sat, 12 May 2018 23:17:14 +0800 Subject: [PATCH] perf[filter]: remove duplicate code #661 --- src/filters/index.js | 70 +++----------------------------------------- 1 file changed, 4 insertions(+), 66 deletions(-) diff --git a/src/filters/index.js b/src/filters/index.js index 285a314b..47ef2aa2 100644 --- a/src/filters/index.js +++ b/src/filters/index.js @@ -1,3 +1,6 @@ +// set function parseTime,formatTime to filter +export { parseTime, formatTime } from '@/utils' + function pluralize(time, label) { if (time === 1) { return time + label @@ -16,67 +19,8 @@ export function timeAgo(time) { } } -export function parseTime(time, cFormat) { - if (arguments.length === 0) { - return null - } - - if ((time + '').length === 10) { - time = +time * 1000 - } - - const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}' - let date - if (typeof time === 'object') { - date = time - } else { - date = new Date(parseInt(time)) - } - const formatObj = { - y: date.getFullYear(), - m: date.getMonth() + 1, - d: date.getDate(), - h: date.getHours(), - i: date.getMinutes(), - s: date.getSeconds(), - a: date.getDay() - } - const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => { - let value = formatObj[key] - if (key === 'a') return ['一', '二', '三', '四', '五', '六', '日'][value - 1] - if (result.length > 0 && value < 10) { - value = '0' + value - } - return value || 0 - }) - return time_str -} - -export function formatTime(time, option) { - time = +time * 1000 - const d = new Date(time) - const now = Date.now() - - const diff = (now - d) / 1000 - - if (diff < 30) { - return '刚刚' - } else if (diff < 3600) { // less 1 hour - return Math.ceil(diff / 60) + '分钟前' - } else if (diff < 3600 * 24) { - return Math.ceil(diff / 3600) + '小时前' - } else if (diff < 3600 * 24 * 2) { - return '1天前' - } - if (option) { - return parseTime(time, option) - } else { - return d.getMonth() + 1 + '月' + d.getDate() + '日' + d.getHours() + '时' + d.getMinutes() + '分' - } -} - /* 数字 格式化*/ -export function nFormatter(num, digits) { +export function numberFormatter(num, digits) { const si = [ { value: 1E18, symbol: 'E' }, { value: 1E15, symbol: 'P' }, @@ -93,12 +37,6 @@ export function nFormatter(num, digits) { return num.toString() } -export function html2Text(val) { - const div = document.createElement('div') - div.innerHTML = val - return div.textContent || div.innerText -} - export function toThousandslsFilter(num) { return (+num || 0).toString().replace(/^-?\d+/g, m => m.replace(/(?=(?!\b)(\d{3})+$)/g, ',')) }