Underscore.js templates use <% =%> para la interpolación variable. Desafortunadamente eso también se interpreta en un JSP (o GSP). ¿Hay alguna forma de utilizar las plantillas de Underscore.js dentro de los JSP?Plantillas Underscore.js Dentro de JSP
Respuesta
De acuerdo con la página web que vinculados a:
Si delimitadores de estilo ERB no son su taza de té, puede cambiar la configuración de la plantilla de Guión bajo> utilizar diferentes símbolos para hacer estallar código interpolada.
Se sugiere cambiar los interpolate
y evaluate
expresiones regulares. Esto significa que puede cambiar el <% =%> uso a algo que no entre en conflicto con JSP.
Añadir la siguiente interpolar y Evaluación de la configuración en su página JSP
_.templateSettings = {
interpolate: /\<\@\=(.+?)\@\>/gim,
evaluate: /\<\@(.+?)\@\>/gim,
escape: /\<\@\-(.+?)\@\>/gim
};
entonces usted puede escribir su calificar de relieve las variables, si y para los estados con <@ @>
en lugar de <% %>
y no entre en conflicto con JSP
¡Esta pregunta ya fue respondida! – erturne
sí, fue respondida, pero esto es para aquellos codificadores (como yo) que preferirían tener una solución de copiar y pegar :) – coderman
He agregado ese bloque y he cambiado todas mis etiquetas a <@ @> y parece que no funciona. ¿Alguien puede arrojar algo de luz sobre lo que estoy haciendo mal? – jrutter
El ejemplo de @coderman fue útil, pero, lamentablemente, no funciona si desea usar líneas nuevas en sus plantillas. Por ejemplo:
<@
var numPages = 10;
if (numPages > 1) {
@>
<div><@[email protected]></div>
<@}@>
El problema es que la expresión regular para evaluate
no coincidirá través de saltos de línea como se describe aquí: Javascript regex multiline flag doesn't work
Por lo tanto, la solución que funcionó para mí es:
_.templateSettings = {
interpolate: /\<\@\=(.+?)\@\>/gim,
evaluate: /\<\@([\s\S]+?)\@\>/gim,
escape: /\<\@\-(.+?)\@\>/gim
};
¡Gracias por esto! He estado enfrentando el mismo problema – Gediminas
El problema se puede resolver escapando de la secuencia <%
en el código:
<script id="tmpl" type="text/x-template">
<span>Hello, <\%=name%></span>
</script>
Así que no necesita cambiar ninguna lógica de motor de plantilla.
Justo lo que necesitaba, ¡gracias! –
Otra opción que no requiere reemplazo global consiste en especificar la interpolación y evaluar a la invocación de métodos específicos
_.template($("#template-id").html(),null, {
interpolate : /\{\{\=(.+?)\}\}/g,
evaluate: /\{\{(.+?)\}\}/g
});`
- 1. Rieles con plantillas Underscore.js
- 2. variables dentro de la plantilla underscore.js
- 3. depuración de plantillas underscore.js es difícil sin números de línea
- 4. ¿Cómo puedo usar las plantillas Underscore.js junto con EJS?
- 5. Enum dentro de un JSP
- 6. Interpolar dentro de los atributos html con Underscore.js
- 7. Underscore.js .filter() y .any()
- 8. Uso de Underscore.js con ASP.NET
- 9. underscore.js para comprobar nula
- 10. underscore.js: _.throttle (función, espera)
- 11. JSP: el acceso de enumeración dentro de las etiquetas JSP EL
- 12. Iterar objetos con underscore.js
- 13. Uso de JavaScript dentro de una etiqueta JSP
- 14. cómo imprimir una matriz en la plantilla underscore.js?
- 15. Uso de plantillas de Jade en Backbone.js
- 16. If-then-else dentro de una expresión JSP?
- 17. ¿Cómo puedo reutilizar HTML/JSP dentro de una página?
- 18. Incluyendo la página JSP dentro de cada ciclo
- 19. Problema al obtener la ruta del contexto dentro de jsp?
- 20. Usando underscore.js groupBy con Ember.js
- 21. Ruta al directorio de plantillas de WordPress dentro de jQuery?
- 22. ¿Se complementan Underscore.js y jQuery?
- 23. Plantillas de representación dentro de los ayudantes en el manillar
- 24. ¿Cómo hago si/entonces en "bigote" -like underscore.js?
- 25. Cómo renderizar HTML dentro de las plantillas Slim
- 26. ¿Cuál es la mejor manera de crear plantillas de diseño JSP?
- 27. hallazgo clave de objeto en underscore.js
- 28. Java (JSP/Servlet): equivalente de getServletContext() desde adentro de .jsp
- 29. Ejemplo de Node.js Express registrando Underscore.js como motor de vista?
- 30. JSP - ¿Puedo usar <jsp: attribute> dentro de <c:if>? Excepción: "Debe usar jsp: body para especificar cuerpo de la etiqueta"
Oh Por Dios, supongo que tenía mejor RTFM! Ahora no me siento estúpido. ;-) Gracias por la respuesta rápida ... problema resuelto. – erturne