Tal y como comentamos en un post anterior, el uso de un motor de templating en JavaScript, y más concretamente en jQuery, es una manera muy interesante de aislar la vista del modelo, y de poder generar posteriormente a partir de una plantilla el contenido a partir de los datos del modelo.
Si bien os hablábamos entonces de jQuery-tmpl como un motor válido para realizar estas tareas, dejábamos caer que este sistema ya no era el oficialmente «recomendado» por el equipo que hay detrás (en este caso y si no recuerdo mal jQuery UI), y que todo ese desarrollo se estaba migrando ahora a JsRender y JsView.
JsRender es un motor de templates basado completamente en Strings, sin dependencias del DOM o incluso de jQuery, pudiendo incluso correr en el servidor mediante node.js. JsRender es muy rápido, tanto que según su creador es aproximadamente 20 veces más veloz renderizando que su predecesor jQuery.tmpl…
Montado sobre JsRender, está JsViews, que básicamente amplía la funcionalidad de JsRender para pasar a un modelo de «vistas» que no son otra cosa que templates renderizados, permitiendo un anidamiento entre ellas, y por tanto una jeraraquía. Además JsViews, amplía la funcionalidad mediante data binding permitiendo que cambios en el modelo sean automáticamente adoptadas por las vistas dependientes… pero vamos a dejarnos de teoría y pasamos a un ejemplo sencillo…
Seguir leyendo…