Как отформатировать дату во внедренной
app.js
app.get('/user.html', function(req, res){
dbConnect.collection("users").find().toArray(function(err, docsData) {
res.render('user', {
data: docsData,
title: "EJS example",
header: "Some users"
});
});
});
user.html
<% data.forEach(function(user){ %>
<tr>
<td>
<%= user.date %>
</td>
</tr>
<% }) %>
выходной 2014-12-24T09:47:07.436Z
это значение исходит от mongodb. Я хочу отформатировать это к 24 декабря 2014 года. Как отформатировать его во внедренной.
1 ответ
Решение
Ты можешь использовать toDateString()
чтобы лучше отформатировать дату в JavaScript:
<% data.forEach(function(user){ %>
<tr>
<td>
<%= user.date.toDateString() %>
</td>
</tr>
<% }) %>
Если вы хотите отобразить дату в произвольном формате, вы можете использовать сторонний модуль, такой как Moment.js. Используя Moment.js, ваш код будет выглядеть следующим образом:
app.js
var moment = require('moment');
app.get('/user.html', function(req, res){
dbConnect.collection("users").find().toArray(function(err, docsData) {
res.render('user', {
data: docsData,
title: "EJS example",
header: "Some users",
moment: moment
});
});
});
user.html
<% data.forEach(function(user){ %>
<tr>
<td>
<%= moment(user.date).format( 'MMM-DD-YYYY') %>
</td>
</tr>
<% }) %>
Надеюсь, это поможет!