2016-02-27 64 views
1

在流星中,我們有'@index'操作符來獲取迭代的指數值。但我想獲得迭代總數,然後在頁面上打印該數字。因此,頂部的頁面可能會讀取一組中的男孩總數。如何獲得流星的最終迭代次數

例如,我可能有類似:

Total = {{#each StudentMale}} {{formatMaleCount @index}} {{/each}} 

以及寄存器幫手只是加1數量

​​

,這將打印:

Total = 1234567 

我想要:

Total = 7 

關於如何做到這一點,我試圖讓助手把值放入一個數組中,但是這不會起作用,因爲每次迭代都會產生一個新數組。

+0

嗯,你在每一個裏面,所以即使你管理獲得最後一個索引的方式,它也會打印7次,取決於你在每個迭代器上有多少對象,所以你爲什麼不簡單地讓這個幫助器formatMaleCount返回一個Make.find({foo:'bar'})。count()? – Ethaan

+0

@Ethaan你說得對。只需使用迭代的數組長度,而不是使用索引。 –

回答

1

StudentMale大概是一個數組或光標,所以在新的幫手:

如果它是一個數組:

arrayLength(array) { 
    return array.length; 
} 

或者,如果它是一個集合:

studentMaleLength() { 
    return StudentMales.find().fetch().length; 
} 

然後,只需調用你的幫手。