github.com/foo123/Contemplate , liviano, rápido, flexible y motor de plantilla isomosprhic (pruebas jsperf y pruebas de ejemplo incluidas) (ps: soy el autor)
Nikos M.
Respuestas:
109
Plantilla-Motor-Selector! - Herramienta para ayudar a seleccionar el motor de plantilla adecuado para un proyecto.
Funciona muy bien (sarcasmo). Respondiendo a las 3 primeras preguntas: Cliente o servidor: cliente Cuánta lógica: solo lo básico ¿Debe ser uno de los más rápidos: sí No produce resultados.
Salvador Dali
2
@SalvadorDali: los "más rápidos" compilan directamente en JS, por lo que su otro requisito es que tenga conflictos "solo los básicos", ya que no limitan nada.
Mark Kahn
1
@SalvadorDali, una herramienta para ayudarte a elegir cosas no hará que esas cosas hagan lo que tú quieres.
Mi favorito es Slim ( slim-lang.com ). Especialmente bueno para los fanáticos del rubí.
Alex Nazarsky
24
En términos de rendimiento, descubrí que no es el motor de plantillas en sí, sino más si existe la posibilidad de precompilar las plantillas. De todos modos, es una buena práctica concatenar y minificar todos sus archivos fuente JavaScript en un archivo para el modo de producción, por lo que básicamente es el mismo paso precompilar las plantillas también.
He usado la plantilla jQuery y Moustache para la creación de plantillas del lado del cliente, pero mi favorito sigue siendo EJS, que siempre funcionó mucho más rápido que cualquier otra cosa que probé hasta ahora, especialmente en el modo de producción (se compila para la concatenación de cadenas nativas siempre que sea posible y solo necesita un DOM acceso para insertar realmente la vista renderizada). Es parte del marco JavaScriptMVC y cuando se usa con StealJS como administrador de dependencias, ya realiza toda la compilación de la plantilla en producción ( View Engine también es compatible con las plantillas Micro, Moustache y jQuery).
Actualmente estoy compilando con backbone.js, y ya tiene plantillas de subrayado, no sé si debería pasar a otros motores de plantillas. ¿Pero lo que puedo ver en todo este bigote de evaluación comparativa parece ser el ganador?
kaha
Encontré a Moustache bastante lento. ¿Tiene problemas de rendimiento reales con su motor de plantillas?
Daff
no realmente, la única pregunta que tendría es, ¿cómo puedo precompilar las plantillas?
kaha
Depende del idioma de la plantilla que decidas usar. Básicamente, necesitaría ejecutar un script del compilador antes de la minificación durante su proceso de compilación. Por ejemplo, algo como esto para jQuery template github.com/wookiehangover/jquery-tmpl-jst
Daff
3
EJS es el mejor sin duda. Simplemente se quita de su camino y le permite codificar JavaScript, le permite cargarlo de forma remota de una manera súper limpia y le permite reemplazar '<' por este '[' para trabajar con su codificación del lado del servidor. Todo lo demás para mí es como un súper nerd tratando de hacerlo cutie con una bonita basura de abstracción de sintaxis.
Jason Sebring
11
Puede ser PURO : permite transformar JSON en HTML con plantillas creadas a partir de su html existente, no de una plantilla separada con una sintaxis especial.
Desde el sitio de PURE:
Herramienta de creación de plantillas simple y ultrarrápida para generar HTML a partir de datos JSON
La representación (HTML) y la lógica (JS) permanecen totalmente separadas
Funciona de forma independiente o con dojo, DomAssistant, Ext JS, jQuery, Mootools, Prototype, Sizzle y Sly
La mejor manera de entenderlo es ver qué hace realmente esta biblioteca : (de la demostración oficial)
Elija el lenguaje de plantilla que tenga una api y una sintaxis que le resulte más atractiva. Si tiene problemas de rendimiento, puede buscar alternativas.
A menos que esté construyendo tablas con miles de filas, probablemente no notará ninguna diferencia.
Personalmente utilizo las plantillas de cierre de Google . Lo elegí principalmente porque también tiene una implementación de Java. Nunca he realizado evaluaciones comparativas.
Respuestas:
Plantilla-Motor-Selector! - Herramienta para ayudar a seleccionar el motor de plantilla adecuado para un proyecto.
fuente
En términos de rendimiento, descubrí que no es el motor de plantillas en sí, sino más si existe la posibilidad de precompilar las plantillas. De todos modos, es una buena práctica concatenar y minificar todos sus archivos fuente JavaScript en un archivo para el modo de producción, por lo que básicamente es el mismo paso precompilar las plantillas también.
He usado la plantilla jQuery y Moustache para la creación de plantillas del lado del cliente, pero mi favorito sigue siendo EJS, que siempre funcionó mucho más rápido que cualquier otra cosa que probé hasta ahora, especialmente en el modo de producción (se compila para la concatenación de cadenas nativas siempre que sea posible y solo necesita un DOM acceso para insertar realmente la vista renderizada). Es parte del marco JavaScriptMVC y cuando se usa con StealJS como administrador de dependencias, ya realiza toda la compilación de la plantilla en producción ( View Engine también es compatible con las plantillas Micro, Moustache y jQuery).
fuente
Puede ser PURO : permite transformar JSON en HTML con plantillas creadas a partir de su html existente, no de una plantilla separada con una sintaxis especial.
Desde el sitio de PURE:
La mejor manera de entenderlo es ver qué hace realmente esta biblioteca : (de la demostración oficial)
Todas las demostraciones están aquí
fuente
LinkedIn eligió dust.js http://akdubya.github.com/dustjs/
fuente
Elija el lenguaje de plantilla que tenga una api y una sintaxis que le resulte más atractiva. Si tiene problemas de rendimiento, puede buscar alternativas.
A menos que esté construyendo tablas con miles de filas, probablemente no notará ninguna diferencia.
Personalmente utilizo las plantillas de cierre de Google . Lo elegí principalmente porque también tiene una implementación de Java. Nunca he realizado evaluaciones comparativas.
fuente