With the latest stable version of Handlebar, I'm trying to display the site name while iterating through each children. The output of the code below is:
5
Stackoverflow
One -
Two -
Can handlebars retrieve the site name by walking up while rendering the children?
<html>
  <head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
    <script src="handlebars.js"></script>
    <script>
    $(document).ready(function() {
        var source = $('#entry-template').html();
        var template = Handlebars.compile(source);
        var context = {
          site: {
            age: 5,
            name: 'Stackoverflow',
            children: [
              {
                name: 'One'
              },
              {
                name: 'Two'
              }
            ]
          }
        };
        $('div#output').html(template(context));
    });
    </script>
  </head>
  <body>
    <div id="output"></div>
    <script id="entry-template" type="text/x-handlebars-template">
      <div>{{site.age}}</div>
      <div>{{site.name}}</div>
      {{#each site.children}}
      <div>{{name}} - {{site.name}}</div>
      {{/each}}
    </script>
  </body>
</html>
                Try doing {{../site.name}} in your loop. The ../ Handlebars syntax allows access of the parent scope.
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