Обновлено для краткости
Как я могу ссылаться на родительский элемент $ parent во вложенном Knockout foreach / с привязками?
Пример -
<!-- 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 -->
Оригинал
Извините за сбивающий с толку вопрос, но я пытаюсь достичь родительского значения второго уровня, чтобы проверить значение в текущем контексте (как показано ниже), чтобы показать диапазон только в том случае, если он соответствует значению $ parent $ parent (тьфу!)
<!-- 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 -->
Было бы проще сделать так, но из того, что я читал, это невозможно или я делаю это неправильно :)
<!-- 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 -->
Любая помощь будет принята с благодарностью.
$parent.$parentили то, что вы должны использовать,spanпотому что вы не можете объединитьforeachиif?