Je dois afficher une date de la base de données au format "mm-jj-aaaa". Comme il est enregistré au format ISO dans mongodb
comment puis-je le convertir dans le modèle? Voici mon code.
Template.templatename.vname = function () {
return Posts.find();
}
Et dans le modèle
{{#each vname}}
{{ date }}
{{/each}}
Maintenant, il s'affiche comme Tue Feb 04 2014 00:00:00 GMT+0530 (IST)
Je dois l'afficher sous la forme mm-dd-yyyy
Vous voudrez peut-être créer un assistant global comme:
Template.registerHelper('formatDate', function(date) {
return moment(date).format('MM-DD-YYYY');
});
Ensuite, vous pouvez l'utiliser comme:
{{#each vname}}
{{formatDate date}}
{{/each}}
Cette solution dépend de moment qui est une bibliothèque de manipulation de date pratique. Si vous préférez produire la chaîne sans utiliser moment, il existe un certain nombre de réponses pour cela, y compris celui-ci .
le moment est une lib salue
meteor add momentjs:moment
utiliser le moment dans l'aide
Template.home.helpers({
momentFormate: function(time) {
if ((moment().unix() - moment(time).unix()) < 3600) {
return moment(time).fromNow();
} else {
return moment(time).format("YYYY-MM-DD HH:mm");
}
},
})
Voici une solution qui fonctionne dans Meteor sans aucune dépendance avec un autre package:
// global helper
Template.registerHelper('formatDate', function(date) {
return monthNames[date.getMonth()] + " " + date.getDate() + ", " + date.getFullYear();
});
Cela renverra une chaîne de date au format "11 décembre 2015". Déplacez-vous getMonth()
, getDate()
et getFullYear()
pour votre format préféré. Pour plus d'options de mise en forme, consultez d'autres méthodes de l'objet Date .