moment类型渲染为长数字的问题

120 阅读1分钟

问题

moment类型的字段在选择一个日期后,传值时变成了1638633600000

打印在控制台上显示为:

Moment { _isAMomentObject: true, _i: {… }, _isUTC: false, _pf: {… }, _locale: Locale, … }
_d: Sun Dec 05 2021 00: 00: 00 GMT + 0800(中国标准时间) { }
_i: { year: 2021, month: 11, date: 5 }
_isAMomentObject: true
_isUTC: false
_isValid: true
_locale: Locale { _calendar: {… }, _longDateFormat: {… }, _invalidDate: 'Invalid date', _dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, ordinal: ƒ, … }
_pf: { empty: false, unusedTokens: Array(0), unusedInput: Array(0), overflow: -1, charsLeftOver: 0, … }
[[Prototype]]: Object

解决方法

编写一个转换类型的函数

public formatTimeToDate(time): string {
    if (time == null) {
        return null;
    }
    else {
        return moment(time).format('YYYY-MM-DD');
    }
}