Форматирование объекта даты в массиве с моментом дает неожиданный результат - PullRequest
0 голосов
/ 11 февраля 2020

Я получаю данные заметок из базы данных MongoDB и Nodejs сервера базы API, и я пытаюсь отформатировать даты, используя момент, ниже показано, как выглядят массивы примечаний, а также под массивом примечаний - то, что я другие пытались добиться этого

notes = [{
date: "2020-02-27T19:35:52.000Z"
text: "alguma coisa"
_id: "1"

date: "2020-02-27T20:20:27.000Z"
text: "o que"
_id: "2"


date: "2020-02-27T20:21:00.000Z"
text: "o"
_id: "3"
}]


getFunction(){
this.api.get("/notes/", _id).subscribe(
      data => {
        let response = data as any;
        let ret = JSON.parse(response._body);

        this.notesData = ret;
        let retNow = this.notesData.map(o => { 
          Object.keys(o).forEach(k => {
            let d = moment(new Date(o[k]))
            if (d.isValid()) o[k] = moment().format("dddd DD-MMM-YYYY HH:mm");
          })
        })
        console.log("Note" retNow)
      }, error => {
        console.log("error", error);
      }
    );}

my HTML

{{note.date}}

Дата была отформатирована правильно, но проблема в том, все даты одинаковы, и все они являются текущей датой (сегодняшней датой), пожалуйста, что я здесь не так делаю,

1 Ответ

2 голосов
/ 12 февраля 2020

Можете ли вы попробовать это

moment(YOUR_DATE).format(DATE_FORMAT);
moment('2020-02-27T20:21:00.000Z').format("DD-MMM-YYYY HH:mm");

Результат: 28 февраля 2020 года 01: 51

...