鉴于几年的数月和返回的数据可能仅适用于特定的月份,我如何才能在火焰中呈现这一点,但是在适用的记录不存在的情况下也会呈现0?
我正在与之合作:
{{#each month in months}}
{{#each recordDataset }}
{#if equals recordDataset.period month}<td>{{ recordDataset.value}}</td>{/if}
{{/each}}
{{/each}}
这个嵌套循环显然返回太多,因为它循环遍历2个独立的数据集。我当然可以考虑如何用其他语言做到这一点,而不是用火焰。
例如,理想的是:
{{#each month in months}}
{{#if recordSet['month'] == month}}
<td>{{ recordDataset.value}}</td>
{{else}}
<td> </td>
{{/if}}
{{/each}}
但我不明白我是如何做到的。
非常感谢任何帮助。
答案 0 :(得分:1)
根据您的代码示例,recordDataSet
有一个属性month
,您希望将其与month
中的每个months
进行比较。鉴于此,您可以创建一个等于运算符并将其用于比较:
Template.registerHelper( 'equals', ( v1, v2 ) => {
return v1 === v2;
});
{{#each month in months}}
{{#if equals recordDataSet.month month}}
<td>{{recordDataset.month}}</td>
{{else}}
<td>0</td>
{{/if}}
{{/each}}
由于我没有记录数据集的架构,因此您必须根据需要进行调整。