Javascript para programadores impacientes

JavaScript for impatient programmers — a pesar del título, explica con harto detalle incluso los aspectos más básicos del lenguaje. Está actualizado hasta ES 2019 por lo que es especialmente útil para refrescar cosas de sintaxis y nuevas funcionalidades que se han ido incorporando al lenguaje. El libro está prácticamente entero, sólo hay un par… Continue reading Javascript para programadores impacientes

Getting response headers data from an AJAX request with javascript

Response headers can contain valuable information and may help to keep your API responses simpler by separating the actual response data from accessory metadata. For instance, when querying the WordPress JSON API for a list of posts, the response body includes just the posts data but the pagination info it’s sent as headers: Whether you’re… Continue reading Getting response headers data from an AJAX request with javascript

Optimización AJAX 3: caché volátil

Poder guardar respuestas en caché nos puede evitar tener que realizar nuevas peticiones a consultas para las cuales ya hemos obtenido los resultados anteriormente. Por supuesto, no siempre vamos a querer guardar estos resultados: en casos donde es muy probable que la información sea muy dinámica y lo más importante es contar con la información… Continue reading Optimización AJAX 3: caché volátil

Optimización AJAX 1: elección del método HTTP

Si bien las interacciones en AJAX nos permiten obtener información de forma dinámica desde el servidor de un sitio web o aplicación, existen varias formas de aumentar la velocidad de estas respuestas para mejorar la experiencia de nuestros usuarios al cargar información bajo demanda, obtener datos de búsquedas u otras interacciones. Más allá de la… Continue reading Optimización AJAX 1: elección del método HTTP

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}}

Automatizar tareas de traducción de WordPress con Grunt

Grunt es una de esas herramientas que al principio parece un poco intimidante, pero al empezar a utilizarla se hace cada vez más necesaria y adictiva. Por si aún no lo conoces, Grunt es un programita hecho en javascript sobre node.js que permite automatizar una gran cantidad de tareas, y sirve especialmente para poner a… Continue reading Automatizar tareas de traducción de WordPress con Grunt