Aktualizacja dla zwięzłości
Jak mogę odwołać się do $ rodziców $ rodzica w zagnieżdżonej Knockout foreach/z wiązaniami?
Przykład -
<!-- ko foreach: grandParent -->
<tr>
<!-- ko foreach: $parent.parents --> // <-- Doesn't work
<!-- ko foreach: children -->
<td data-bind="if: favToy().name == $parent.$parent.favToy().name">
<span data-bind="text: favToy().name"></span>
</td>
<!-- /ko -->
<!-- /ko -->
</tr>
<!-- /ko -->
Original
Przepraszamy za mylące pytanie, ale próbuję osiągnąć wartość drugiego poziomu rodzica, by sprawdzić na wartości w bieżącym kontekście (jak poniżej) wyświetla tylko span, jeśli pasuje do wartości $ parent rodzica $ (ugh!)
<!-- ko foreach: grandParent -->
<tr>
<!-- ko foreach: $parent.parents -->
<!-- ko foreach: children -->
<td data-bind="if: favToy().name == $parent.$parent.favToy().name">
<span data-bind="text: favToy().name"></span>
</td>
<!-- /ko -->
<!-- /ko -->
</tr>
<!-- /ko -->
To byłoby łatwiej zrobić to w ale z tego, co przeczytałem, to nie jest możliwe lub robię to źle :)
<!-- ko foreach: grandParent -->
<tr>
<!-- ko foreach: $parent.parents -->
<!-- ko foreach: children ? favToy().name == $parent.$parent.favToy().name -->
<td data-bind="text: favToy().name"></td>
<!-- /ko -->
<!-- /ko -->
</tr>
<!-- /ko -->
Każda pomoc będzie bardzo ceniona.
Nie rozumiem Twoje pytanie, co nie działa? Jaki jest twój problem: jest składnia '$ parent. $ Parent' lub musisz użyć' span', ponieważ nie możesz scalić 'foreach' i' if'? – nemesv