为什么我不能在#each内部调用我的Handlebars部分?

重构一些代码时,我得到了这个问题:当应用使用部分的Handlebars模板时,它抱怨You must pass a string or Handlebars AST to Handlebars.compile. You passed function ... You must pass a string or Handlebars AST to Handlebars.compile. You passed function ... 功能是这样的:

function (context, options) {
  options = options || {};
  var namespace = options.partial ? options : env,
      helpers,
      partials;

  if (!options.partial) {
    helpers = options.helpers;
    partials = options.partials;
  }
  var result = templateSpec.call(
        container,
        namespace, context,
        helpers,
        partials,
        options.data);

  if (!options.partial) {
    checkRevision(container.compilerInfo);
  }

  return result;
}

我做了什么:

部分用于迭代列表(称为成员)以构建ul复选框。 我发现我需要制作一个列表清单,并将调用放在#each内部并更新模板输入。

我有这个:

模板:

...
{{#each hierarchy.levels}}
<ul>
{{> mypartial}}
</ul>
{{/each}}

部分(简化):

{{#each members}}
<li>{{this.id}}</li>
{{/each}}

我检查过我的数据结构中的每个hierarchy.levels都有一个members列表。

如果我使用#with hierarchy.levels.[0]替换模板中的#each #with hierarchy.levels.[0] (例如)它的工作原理,但是在迭代levels时它不起作用。


链接地址: http://www.djcxy.com/p/61589.html

上一篇: Why can't I call my Handlebars partial inside #each?

下一篇: Ember.js Handlebars block helper