Angular Moment.js显示今天前3天

Angular Moment.js显示今天前3天,angular,typescript,angular6,momentjs,Angular,Typescript,Angular6,Momentjs,在我们的项目中(基于角度),我们使用moment.js来显示日期,但它显示的是04.10,而今天是07.10 代码如下: TS GetTime(时间){ const todaysDate=新日期(); const date=新日期(时间); 常数d1=时刻(新日期(今天)); 常数d2=时刻(新日期); 常数d3=d1.diff(d2,‘天’); 如果(d3==0){ 返回时刻(时间)。格式('LT'); }否则{ 返回时刻(时间)。格式('DD/MM/YYYY'); } } HTML {{G

在我们的项目中(基于角度),我们使用moment.js来显示日期,但它显示的是04.10,而今天是07.10

代码如下:

TS

GetTime(时间){
const todaysDate=新日期();
const date=新日期(时间);
常数d1=时刻(新日期(今天));
常数d2=时刻(新日期);
常数d3=d1.diff(d2,‘天’);
如果(d3==0){
返回时刻(时间)。格式('LT');
}否则{
返回时刻(时间)。格式('DD/MM/YYYY');
}
}
HTML

{{GetTime(chat.msgId.message[chat.msgId.message.length-1].createdAt)}


为什么显示3天前?可能是因为时间是3天前,而不是现在。如何修复它?是否应该从后端(Node.js、Mongo DB)或以上功能修复错误?因为我检查了很多设备,所有的地方都是一样的。我不认为有什么需要修复的。如果时间比现在早3天,通常会有一个显示比现在早3天的格式化时间。你为什么不告诉我们时间的价值呢?你是什么意思(如果时间比现在早3天)?在所有的设计中,时间都是正确的,就在这个网站和手机应用程序中,它显示了04.10。真让人困惑。可能是因为时间比现在早了3天,而不是现在。怎么才能修复呢?是否应该从后端(Node.js、Mongo DB)或以上功能修复错误?因为我检查了很多设备,所有的地方都是一样的。我不认为有什么需要修复的。如果时间比现在早3天,通常会有一个显示比现在早3天的格式化时间。你为什么不告诉我们时间的价值呢?你是什么意思(如果时间比现在早3天)?在所有的设计中,时间都是正确的,就在这个网站和手机应用程序中,它显示了04.10。真让人困惑。
 GetTime(time) {
    const todaysDate = new Date();
    const date = new Date(time);

    const d1 = moment(new Date(todaysDate));
    const d2 = moment(new Date(date));

    const d3 = d1.diff(d2, 'days');

    if (d3 === 0) {
      return moment(time).format('LT');
    } else {
      return moment(time).format('DD/MM/YYYY');
    }
  }

HTML

<p class="time float-right">
                        {{GetTime(chat.msgId.message[chat.msgId.message.length - 1].createdAt)}}
                    </p>