oryginalne pytanieWstawianie wiązania "za"?
Czy ktoś ma lub wie o wiążącym dla nokaut, która pozwoliłaby zachowania podobnego do pętli for? Mogę zrobić foreach, co chcę, ale byłoby miło, gdybym nie musiał tego robić w ten sposób.
Edycja 2
Próbuję utworzyć wiersze tabeli w oparciu o wybór użytkownik czyni. W niektórych przypadkach potrzebuję x wierszy, gdzie x jest długością tablicy, innym razem x oznacza największą liczbę wierszy, które będą potrzebne do wyświetlenia n liczby tablic.
Ex: image1 jest zbudowany w oparciu o 4 różne tablice, wszystkie o rozmiarze image2 jest zbudowany z tej samej tablicy i w tym przypadku jest podwojony.
<div data-bind="if: selectedTab()">
<table>
<thead>
<tr>
<td>
<div class="a-i-post-All"></div>
</td>
<!-- ko foreach:$root.selectedTab().races-->
<td>
<input type="checkbox" />
</td>
<!-- /ko -->
</tr>
</thead>
<tbody data-bind="foreach: selectedTab().runners"> // <-- This is an empty array created by the max number of Runners in the selectedTabs array of Races
<tr>
<td>
<div class="a-i-post"></div>
</td>
<!-- ko foreach:$root.selectedTab().races-->
<td>
<!-- ko if: Runners.length > $parentContext.$index()-->
<input type="checkbox" />
<!-- /ko -->
</td>
<!-- /ko -->
</tr>
</tbody>
Powyższy działa dobrze i tworzy to, co chcę, ale nie lubię konieczności włączania selectedTab.runners od kilku do pustej tablicy po prostu sprawiają, że pętla n razy aby utworzyć wiersze. Jestem otwarty na sugestie. Uwaga Od momentu, kiedy opublikowałem to pytanie, znacznie skorygowałem ten kod, a teraz sprowadziłem się tylko do jednego wystąpienia związanego z moim początkowym pytaniem.
Dlaczego nie chcesz używać foreach z indeksu $? –
Chcę być w stanie foreach na liczbę, a nie tablicę – Zholen
To nie jest tak naprawdę dla Knockout. Próbuję wymyślić przykład z prawdziwego świata, w którym trzeba będzie powtórzyć określoną liczbę razy "x" w JavaScript, gdzie nie można tego zrobić po stronie serwera po pierwszym wygenerowaniu widoku. Brakuje mi. Być może, jeśli rzeczywiście powiedziałeś nam, co tak naprawdę chcesz zrobić, ktoś może ci pokazać lepszy sposób. –