template hbs handlebars javascript datetime meteor handlebars.js date-format

javascript - hbs - Formatee una fecha desde dentro de una plantilla de manubrios en Meteor



javascript datetime format (1)

La solución es bastante simple, y tal vez alguien lo encuentre útil. En la mayoría de los proyectos, tiene un par de formatos de fecha que desea usar. Por lo tanto, es un buen enfoque para definir sus formatos con nombres legibles.

Para este ejemplo, tomé solo ''corto'' y ''largo'', pero verán, es muy fácil de extender.

Así que creé un objeto en mi script de cliente:

var DateFormats = { short: "DD MMMM - YYYY", long: "dddd DD.MM.YYYY HH:mm" };

Además, creé un Handlebars Helper "formatDate".

Editado: ahora debería usar UI en lugar de manubrios

// Deprecated since version 0.8.0 Handlebars.registerHelper("formatDate", function(datetime, format) { // Use UI.registerHelper.. UI.registerHelper("formatDate", function(datetime, format) { if (moment) { // can use other formats like ''lll'' too format = DateFormats[format] || format; return moment(datetime).format(format); } else { return datetime; } });

Como puedes ver, utilizo el momento.js lib en mi Ayudante. Para instalarlo, simplemente escriba meteor add momentjs:moment desde su línea de comando.

Y ahora, en todas partes de mis Plantillas, puedo usarlo con los dos params, como este:

{{formatDate MyISOString "short"}} // 02 September - 2013 {{formatDate MyISOString "long"}} // Monday 02.09.2013 18:00

Si desea crear sus propios formatos, eche un vistazo al momento en que se encuentra http://momentjs.com/docs/

Feliz codificación!

Obtuve una fecha con formato ISO de mis datos y lo que realmente quiero hacer es modificar mi formato de fecha directamente desde mis plantillas.

Me gusta esto:

{{format my.context.date "myFormat"}}

Estoy usando la biblioteca de momentos, así que podría escribir algo como esto:

{{formatDate my.context.date "DD.MM.YYYY HH:mm"}} // 03.09.2013 18:12

Sería bueno, porque creo que es el lugar donde debería poder hacer esto. En mi plantilla