Plantillas de bigote: cómo generar un bloque solo una vez para listas no vacías
Si mi lista está vacía, quiero mostrar esto:
<div id="some-id">
</div>
Si mi lista no está vacía, quiero mostrar esto:
<div id="some-id">
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>etc</li>
</ul>
</div>
Tenga en cuenta que la salida<ul>
y</ul>
etiquetascomo máximo una vez, y solo si la lista no está vacía.
El siguiente código está cerca de cómo lo haría en PHP, pero obviamente es incorrecto:
<div id="some-id">
{{#items}}
<ul>
{{/items}}
{{#items}}
<li>{{name}}</li>
{{/items}}
{{#items}}
</ul>
{{/items}}
</div>
Siitems
es una lista de 3 elementos, voy a obtener 3<ul>
's - obviamente no es lo que quiero.
Me doy cuenta de que podría establecer alguna otra clave como una bandera booleana (hasItems
, quizás), pero esto se siente redundante.
¿Existe una forma más elegante de que pueda generar un bloque solo una vez para una lista que no esté vacía?