javascript - una - solo muestra el primer elemento en la lista usando bigote
seleccionar id jquery (3)
Estoy usando el motor de plantillas de bigotes y solo quiero mostrar el primer elemento en una larga lista, pero ¿parece que no puedo encontrar los documentos para hacerlo?
si yo uso:
{{# links}}<a href="{{& url}}">{{& title }}</a>{{/ links}}
Obtengo todos los enlaces, sin embargo, solo quiero que se muestre el primero, suena fácil pero no puedo encontrar ningún documento sobre esto.
El bigote no tiene lógica, desde la docs :
Lo llamamos "sin lógica" porque no hay sentencias if, cláusulas de lo contrario ni bucles. En su lugar solo hay etiquetas. Algunas etiquetas se reemplazan por un valor, otras nada, y otras una serie de valores. Este documento explica los diferentes tipos de etiquetas de bigote.
Entonces, lo que esencialmente desea es un mecanismo para hacer que un if link is the first
, de modo que pueda manejar esto en el lado de los datos, solo agregando 1 elemento a sus datos, o agregando una parte de los datos como cuando coloca su los datos en los que agregas un valor como display
y lo configuras como ''en línea'' o ''ninguno'', entonces en tu plantilla haz:
{{# links}}<a href="{{& url}}" style="display: {{display}};">{{& title }}</a>{{/ links}}
Luego, más tarde, puede llamar a scripting en la página para cambiar el estilo. style.display
en alguna acción de usuario o aplicación.
Esos son mis primeros, aunque puede ser más fácil configurar data = data[0]
para esta plantilla en particular. El problema es que probablemente QUIERES utilizar esa lista completa en algún momento, para comentar que necesitaría ver más tu uso y de dónde provienen los datos.
Esta solución funciona con la nueva versión de Mustache.js ( solo ):
mustache.render("{{a.0}}", {a: [''hi'',''world'']})
=> ''hi''
La solución que presentó @Millad casi funcionó para mí. Usando handlebars.js aunque tuve que usarlo entre paréntesis.
{{ a.[0] }}
=> hola
res.render(''view'', { a: [''hello'', ''world''] })