moment.js es una librería completísima para trabajar con fechas en Javascript, que puedes registrar como helper para Ember de modo de facilitar todas la tarea de parsear y formatear fechas desde y hacia distintos formatos.
Ember.Handlebars.registerBoundHelper('fecha', function(stringFecha, options){
// options.hash es un objeto con las opciones
var args = Ember.$.extend({
inputFormat: 'M/D/YYYY',
outputFormat: 'D MMM YYYY'
}, options.hash );
var fecha = moment(stringFecha, args.inputFormat);
return fecha.format( args.outputFormat );
});
- El método
Ember.Handelbars.registerBoundHelper()te permite registrar un helper para propiedades que están ligadas al modelo, de modo que si éste cambia se vuelven a calcular. - La función que registra el helper recibe dos argumentos: el valor sobre el cual actúa el helper y un objeto de opciones.
- El uso de
Ember.$.extend()permite definir parámetros variables y opcionales e indicar sus valores predeterminados.
Uso:
// de forma normal, la propiedad post_published va a estar ligada al modelo
{{fecha post_published outputFormat="YYYY/MM/DD"}}
// también puedes usarlo de esta forma para que no cambie al cambiar los datos
{{unbound fecha post_published}}