moment.js

import moment from 'moment';
import 'moment/locale/zh-cn';
moment.locale('zh-cn');
const PATTERN_DATE = 'YYYY-MM-DD';
const PATTERN_TIME = 'HH:mm:ss';
const PATTERN_MINITUE = 'HH:mm';
const PATTERN_DATE_TIME = 'YYYY-MM-DD HH:mm:ss';
const PATTERN_DATE_MIN = 'YYYY-MM-DD HH:mm';
const PATTERN_MONTH = 'YYYY-MM';
 
 
/**
 * 转换日期模式
 * @param date moment 日期
 * @param pattern 日期转换模式.
 */
export function _format_date(date=moment(),pattern=PATTERN_DATE){
    return date.format(pattern);
}


export function _format_date_time(date=moment(),pattern=PATTERN_DATE_TIME){
    return date.format(pattern);
}



/**
 * 转换日期模式
 * @param date moment 日期
 * @param pattern 日期转换模式.
 */
export function _format_datetime(input,pattern=PATTERN_DATE_TIME){
    return moment(input).format(pattern);
}
 
 
 
/***
 * 更新数据.
 * 
 */
export function _format_number(input){
    const m = moment(Number(input));
    return _format_date(m,PATTERN_DATE_TIME);
}
 
 
/***
 * @param datestr 当前时间字符串
 * @param gap 添加的时间,默认为分钟
 * 返回最终的日期值.
 */
export function _add_date(datestr,gap,pattern=PATTERN_DATE_TIME){
    return moment(datestr,pattern).add(gap,'m').toDate();
}
 
/***
 * 是否超过了时间.
 * @param datestr 当前时间
 * @param d2 moment时间,默认当前
 */
export function _old(datestr,d2=moment(),pattern=PATTERN_DATE_MIN){
    const d = moment(datestr,pattern);
    const fix = d.diff(d2);
    if(fix > 0)
        return false;
    return true;
}
 
/***
 * 
 */
export function _day_list(size=3){
    const result = [];//
    for (let index = 0; index < size; index++) {
        let val =  moment().add(index,"day");
        result.push(_format_date(val));
    }
    return result;
}
 
 
export function _fromNow(datestr,pattern=PATTERN_DATE_TIME){
    const d = moment(datestr,pattern);
    const fix = moment().diff(d)/1000;
    if(fix < 1){
        return '刚刚';
    }else if( fix < 60){
        return d.startOf('second').fromNow();
    }else if(fix < 3600){
        return d.startOf('minute').fromNow();
    }else if(fix < 3600 * 24){
        return d.startOf('hour').fromNow();
    }else{
        return d.startOf('day').fromNow();
    }
}

 

未闻花名
原文地址:https://www.cnblogs.com/duokexiao/p/13652122.html