9
我可以得到我的記錄重複使用foreach,但因爲我使用的是CSS的網格系統,我想將這些記錄一次四個(div class =「column」)爲每個(div class =「row」)。如何獲得敲羣組foreach
我沒有看到一個很好的例子,如何用這種方式來包裝每個記錄。
任何幫助?
我可以得到我的記錄重複使用foreach,但因爲我使用的是CSS的網格系統,我想將這些記錄一次四個(div class =「column」)爲每個(div class =「row」)。如何獲得敲羣組foreach
我沒有看到一個很好的例子,如何用這種方式來包裝每個記錄。
任何幫助?
所以我不完全確定你在做什麼,但你可以像這樣手動分組。
http://jsfiddle.net/madcapnmckay/hFPgT/1/
<div data-bind="foreach: grouped" >
<div data-bind="foreach: $data" class="row">
<div class="column" data-bind="text: text"></div>
</div>
</div>
this.grouped = ko.computed(function() {
var rows = [], current = [];
rows.push(current);
for (var i = 0; i < this.items.length; i += 1) {
current.push(this.items[i]);
if (((i + 1) % 4) === 0) {
current = [];
rows.push(current);
}
}
return rows;
}, this);
希望這有助於。
謝謝!這對靜態數組非常有用。但是當我爲物品使用ko.observableArray時,沒有任何反應。 – Chris
更新:將項目更改爲項目()修復了該問題。 – Chris
是的,一個observableArray只是一個包裝靜態數組的函數,所以執行它會返回裏面的靜態數組。 – madcapnmckay