I have a simple object hierarchy consisting of:
Category
 String name
 List childCategories;
I would like to represent this layout using handlebars in a generic way, but I am having trouble understand how to nest layouts. Given this layout:
<script id="categories-template" type="text/x-handlebars-template">
    {{#categories}}
        <ul >
            <li>                    
                <span>{{name}}</span>       
                <div>{{#childCategories}}{{/childCategories}}</div>
            </li>       
        </ul>
    {{/categories}}
</script>
What is the best way to reuse the existing categories template for all the child categories? Is it necessary to register a handler? Is there an easier way?
Two templates
<!-- language: html -->
<script id="categories-template" type="text/x-handlebars-template">
{{#categories}}
    <ul >
       <li>                    
          <span>{{name}}</span>       
          {{#if childCategories}}                    
             <div>{{&testHelper childCategories}}</div>
          {{/if}}
       </li>       
    </ul>
{{/categories}}
</script>
<script id="categories-nested" type="text/html">
    {{&testHelper categories}}
</script>
And a Handlebars Helper
Handlebars.registerHelper('testHelper', function(info) {
    var template = Handlebars.compile($('script#categories-template').html());
    return template(categories);
});
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With