Handlebars js - 无法从循环/部分访问 parent object 属性

Handlebars js - cannot access parent object properties from loop / partial

我有以下数据object:

有了这个,我可以毫无问题地使用以下循环

Templates.Links = [
"<ul>",
"{{#each data}}",
    "<li>",
    "<div class='flex-item-button'>",
        "<div class='info noicon'>",
            "<span class='name'>{{{URL}}}</span>",
            "<span class='meta'>{{URL}}</span>",                                
        "</div>",
        "<div>",                
        "<span class='expand expand-item-details'><i class='fa fa-sort-down'></i></span>",
        "</div>",
        "<div class='additional-info'>",

        "</div>",
    "</div>",       
    "</li>",
"{{/each}}",
"</ul>",    
].join("\n");

这没有任何问题,并且通过每个数据循环我可以访问我的数据属性。然而,我想要做的是从我的循环中访问标题/ caml 字段。我尝试了以下但没有成功。

{{./title}}
{{../title}}

理想情况下,我想在我的每个循环中使用部分,然后从该部分访问 parent 节点,但这似乎也不起作用。

解决方法如下:

{{#each data}}
  ....
  {{#with ../this}}
    {{> yourPartial}}
  {{/with}}
  ....
{{/each}}

在您的部分,只需:

{{title}}

编辑。 您应该实现自己的助手,例如:

Handlebars.registerHelper("withCurrentItem", function(context, options){
    var contextWithCurrentItem = context;
    contextWithCurrentItem.currentItem = options.hash.currentItem;
    return options.fn(contextWithCurrentItem);
});

并像这样使用它:

{{#withCurrentItem ../this currentItem=this}}
  {{> yourPartial}}
{{/withCurrentItem}}