Подтвердить что ты не робот

Массив handlebars объекта json

Мне нужно создать шаблон с дескрипторами массива json-объекта: (хром-консолью) [object, object, object, object], где каждый объект состоит из этого свойства: name, surname, ecc.

Я понял, что невозможно разместить массив объектов в дескрипторах, но мы должны создать уникальный объект со всем свойством всего объекта массива. Может ли кто-нибудь предложить мне функцию для его создания.

4b9b3361

Ответ 1

Вы можете установить свой массив как свойство объекта-оболочки при вызове шаблона.

Например, при objects в качестве свойства удержания

var an_array = [
    {name: "My name"},
    {name: "Another name"}
];

var source   = /* a template source*/;
var template = Handlebars.compile(source);
var wrapper  = {objects: an_array};

console.log(template(wrapper));

и ваш шаблон может использовать это свойство следующим образом:

<ul>
    {{#each objects}}
        <li>{{name}}</li>
    {{/each}}
</ul>

И демо http://jsfiddle.net/YuvNY/1/

var an_array=[
    {name:"My name"},
    {name:"Another name"},    
];

var source   = $("#src").html();
var template = Handlebars.compile(source);
$("body").append( template({objects:an_array}) );
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="http://builds.handlebarsjs.com.s3.amazonaws.com/handlebars-v2.0.0.js"></script>

<script type='text/template' id='src'>
<ul>
  {{#each objects}}
      <li>{{name}}</li>
  {{/each}}
</ul>    
</script>