benstr
benstr

Reputation: 652

Template.dynamic is not passing data context

I have a list template (#each) in a package that I plan to use across many different collections. Since the template is in a package they are not easily customizable. So I figured this was a great example to use Template.dynamic. Everything works except passing data.

.. I pull the data into the routed page and manipulate the data to match the dynamic template.

Template.usersIndex.helpers({
  items: function() {
    var users = Meteor.users.find({}).fetch();
    var items = users.filter(function(user) {
      return user;
    }).map(function(user){
      return {
        name: user.profile.name,
        description: user.emails[0].address,
        tidbit: "hello"
      };
    });
    return items
  }
});

... the data passes perfectly to the usersIndex template.

<template name="usersIndex">
  <div id="gc-users-index-navbar">
    <h2>Title</h2>
  </div>
  <div id="gc-users-index" class="inner-content">
    {{> Template.dynamic template="strataIndexItem" data="items" }}
  </div>
</template>

... But no dice, the dynamic template is rendered but no data.

<template name="themeIndex">
  <div class="list-group">
        {{#each items }}
          <div class="list-group-item">
            <div class="row-content">
              <div class="least-content">{{tidbit}}</div>
              <h4 class="list-group-item-heading">{{name}}</h4>
              <p class="list-group-item-text">{{description}}</p>
            </div>
          </div>
          <div class="list-group-separator"></div>
        {{/each}}
  </div>
</template>

Upvotes: 1

Views: 1565

Answers (1)

Tomas Hromnik
Tomas Hromnik

Reputation: 2200

You pass data as string?

{{> Template.dynamic template="strataIndexItem" data="items" }}

You should pass data as variable, without ""

{{> Template.dynamic template="strataIndexItem" data=items }}

Also check if your strataIndexItem template is named strataIndexItem:

<template name="strataIndexItem">
   ...
</template>

Upvotes: 3

Related Questions