valor recorrer objetos manejo llenar eliminar elementos elemento ejemplos con cambiar array agregar javascript arrays handlebars.js template-engine

recorrer - manejo de array con javascript



Acceda a los valores utilizando{{##}} en una matriz unidimensional (2)

Una serie de valores escalares debería hacer uso de la gramática de los iteradores simples . Necesitas declarar un bloque #each en la propiedad de skills .

El marcador de posición para cada valor puede ser {{this}} o {{.}} .

Necesitas usar la siguiente plantilla:

{{#each skills}} <li>{{this}}</li> {{/each}}

Alternativamente, puedes usar #list .

{{#list skills}} <li>{{.}}</li> {{/list}}

Ejemplo

function listToHTML(items) { return ''<ul>'' + items.map(function(item) { return ''<li>'' + item + ''</li>''; }).join('''') + ''</ul>''; } Handlebars.registerHelper({ scalar_list_raw : function(items) { return listToHTML(items); }, scalar_list_safe_string: function(items) { return new Handlebars.SafeString(listToHTML(items)); }, }); var data = { skills: [ ''Design'', ''Development'', ''HTML5'', ''CSS'', ''JavaScript'' ], }; $(function() { var source = $("#skills-template").html(); var template = Handlebars.compile(source); $(''body'').append(template(data)); });

ul li { list-style-type: upper-roman; }

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.0.3/handlebars.min.js"></script> <script id="skills-template" type="text/x-handlebars-template"> <h2>Skills - [Block] Each</h2> <ul> {{#each skills}} <li>{{this}}</li> {{/each}} </ul> <h2>Skills - [Helper] SafeString</h2> {{scalar_list_safe_string skills}} <h2>Skills - [Helper] Raw HTML</h2> {{{scalar_list_raw skills}}} </script>

He encontrado muchos ejemplos de uso del ayudante {{#each}} para iterar sobre matrices multidimensionales, pero no puedo averiguar cómo acceder a cada valor en una matriz unidimensional.

Por ejemplo, toma esta matriz:

skills: [''Design'', ''Development'', ''HTML5'', ''CSS'', ''JavaScript''],

¿Cómo imprimo cada elemento en un ayudante como abajo?

template: Handlebars.compile( ''<div>'' + ''{{#each skills}} {{ the_item_output }} {{/each}}'' + ''</div>'' ),

¿Qué necesito colocar en la ubicación de {{ the_item_output }} para ver el elemento real?


{{#each people}} <li>{{this}}</li> {{/each}}