说我有以下数据:
[
{
id: 1,
someFoo: true,
things: [
{ blah: "bang" },
{ blah: "bing" }
]
},
{
id: 2,
someFoo: false,
things: [
{ blah: "boop" },
{ blah: "barp" }
]
}
]
在Handlebars中,如何在someFoo
内检查{{#each things}}
是否属实?
我试过了:
{{#each things}}
<p>{{blah}}</p>
{{#if ../someFoo}}<p>Yay!</p>{{/if}}
{{/each}}
没有运气。
编辑,抱歉看起来我的数组有点误导。实际用例是我有一张可能包含税的发票。所以,数据是这样的:
{
tax: 0, // <-- this could be non-0, in which case should be "truthy"
orders: [
{words: 2, text: "some text", pay: 5.4},
{words: 3, text: "some more text", pay: 7.8}
]
}
,模板是这样的:
<table class="clear">
<thead>
<tr>
<th>Description</th>
<th>Quantity</th>
{{#if tax}}<th>PU HT</th>{{else}}<th>PU</th>{{/if}}
{{#if tax}}<th>TVA</th>{{/if}}
{{#if tax}}<th>Total HT</th>{{else}}<th>Total</th>{{/if}}
</tr>
</thead>
<tbody>
{{#each orders}}
<tr>
<td>Start of text: {{substring text}}...</td>
<td align="right">1.00 U</td>
<td align="right">{{accounting pay}}</td>
{{#if ../tax}}<td align="right">20.00%</td>{{/if}}
<td align="right">{{accounting pay}}</td>
</tr>
{{/each}}
</tbody>
</table>
我的问题是{{#if}}
以外的{{#each}}
,但不是内部的。{/ p>
答案 0 :(得分:2)
除了数据上的其他循环外,您的代码段没有任何问题。
{{#each this}}
{{#each things}}
<p>{{blah}}</p>
{{#if ../someFoo}}<p>Yay!</p>{{/if}}
{{/each}}
{{/each}}
使用../
答案 1 :(得分:1)
这就是我写它的方式,你会在这个中找到someFoo属性,因为它引用了每个的东西
{{#each things}}
<p>{{blah}}</p>
{{#if this.someFoo}}<p>Yay!</p>{{/if}}
{{/each}}