Как изменить формат даты в nodejs - PullRequest
0 голосов
/ 02 февраля 2020

Здравствуйте. Я отображаю дату из базы данных на внешнем интерфейсе, используя nodejs, e js, но это выглядит так:

enter image description here

Но Я хочу, чтобы он только отображал 02.02.2020

e js код:

<p style="font-size: 25px; font-weight: bold;"><%= meeting.date %></p>

код контроллера:

var renderListOfMeetings = async function(req, res) {
    try {
        checkRoles(req);
        const meetings = await Meeting.find({});
        res.render('meeting', {
            title: 'Meetings',
            pdfUrl: config.pdfUrl,
            isAdmin: req.roleAdmin,
            sectionBCommittee: [],
            meetings: meetings
        });
    } catch (ex) {
        console.log(ex.message);
    }
};

1 Ответ

1 голос
/ 02 февраля 2020

?‍? Вы можете создать эту функцию на коде вашего контроллера: 100

function convertDate(d) {
  const date = new Date(d);
  const year = date.getFullYear();
  let month = date.getMonth();
  month = parseInt(month) < 10 ? `0${month}` : month;

  let day = date.getDate();
  day = parseInt(day) < 10 ? `0${day}` : day;
  return day + "." + month + "." + year;
}

? Вы можете изменить имя функции так, как вам нужно.

После этого вы можете передать функцию в renderMeetingLists, поэтому она будет выглядеть следующим образом:

var renderListOfMeetings = async function (req, res) {
  try {
    checkRoles(req);
    const meetings = await Meeting.find({});
    res.render('meeting', {
        title: 'Meetings',
        pdfUrl : config.pdfUrl,
        isAdmin : req.roleAdmin,
        sectionBCommittee: [],
        meetings: meetings,
        // your convert date function
        convertDate: convertDate
    });
  }catch(ex) {
    console.log(ex.message);
  }
}; 

? Обновлено: Итак final js code будет выглядеть так, как показано ниже

function convertDate(d) {
  const date = new Date(d);
  const year = date.getFullYear();
  let month = date.getMonth();
  month = parseInt(month) < 10 ? `0${month}` : month;

  let day = date.getDate();
  day = parseInt(day) < 10 ? `0${day}` : day;
  return day + "." + month + "." + year;
}

var renderListOfMeetings = async function (req, res) {
  try {
    checkRoles(req);
    const meetings = await Meeting.find({});
    res.render('meeting', {
        title: 'Meetings',
        pdfUrl : config.pdfUrl,
        isAdmin : req.roleAdmin,
        sectionBCommittee: [],
        meetings: meetings,
        // your convert date function
        convertDate: convertDate
    });
  }catch(ex) {
    console.log(ex.message);
  }
}; 

После того, как вы передали свой convertDate, теперь вы можете использовать его в своем ejs. Это будет выглядеть следующим образом: 10

<p style="font-size: 25px; font-weight: bold;"><%= convertDate(meeting.date) %></p>

Надеюсь, это поможет вам can.

...