kara-module-file-list
Version:
kara
64 lines (56 loc) • 1.95 kB
JavaScript
import moment from 'moment';
moment.locale('zh-cn', {
week : {
dow : 1, // 定义星期一为一周的第一天
},
weekdays : "星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),
});
/**
* moment().startOf('week') 本周一零时
* moment().startOf('day') 今天零时
* moment().startOf('year') 今年零时
* moment(parseInt(time,10)) 要处理的时间
*/
const timeObj = (time,type) => {
const thisTime = moment(parseInt(time,10)) // 要处理的时间
const dayStart = moment().startOf('day') // 今天零时
const yesterdayStart = moment().startOf('day').subtract(1,'days') // 昨天零时
const weekStart = moment().startOf('week') // 本周一零时
const yearStart = moment().startOf('year') // 今年零时
let before = ''
const after = thisTime.format("H:m")
if (thisTime.isAfter(dayStart)) {
before = ''
} else if (thisTime.isAfter(yesterdayStart)) {
before = '昨天'
} else if (thisTime.isAfter(weekStart)) {
before = thisTime.format('dddd')
} else if (thisTime.isAfter(yearStart)) {
before = type === 'short' ? thisTime.format('M/D') : thisTime.format('M月D日')
} else {
before = type === 'short' ? thisTime.format('YYYY/M/D') : thisTime.format('YYYY年M月D日')
}
return {before,after}
}
/**
* 今天 显示 时:分
* 昨天 显示 昨天
* 本周 显示 周几
* 今年 显示 月/日
* 其余 显示 年/月/日
*/
export const shortTime = (time) => {
const { before, after } = timeObj(time,'short')
return before === '' ? after : before
}
/**
* 今天 显示 时:分
* 昨天 显示 昨天 时:分
* 本周 显示 周几 时:分
* 今年 显示 X月X日 时:分
* 其余 显示 X年X月X日 时:分
*/
export const fullTime = (time) => {
const { before, after } = timeObj(time,'full')
return before === '' ? after : `${before} ${after}`
}