の値に基づいてマークアップを表示しようとしています。値を$index
表示できますが、if
バインディングで使用できないようです。ここでの最善のアプローチは何ですか?
<!-- ko if: $index===0 -->
<div>some mark up here</div>
<!-- /ko -->
の値に基づいてマークアップを表示しようとしています。値を$index
表示できますが、if
バインディングで使用できないようです。ここでの最善のアプローチは何ですか?
<!-- ko if: $index===0 -->
<div>some mark up here</div>
<!-- /ko -->
回答:
$ index(foreachバインディング内でのみ使用可能)
これは、foreachバインディングによってレンダリングされている現在の配列エントリのゼロベースのインデックスです。他のバインディングコンテキストプロパティとは異なり、$ indexは監視可能であり、アイテムのインデックスが変更されるたびに更新されます(たとえば、アイテムが配列に追加または配列から削除された場合)。
例
<div data-bind="foreach: details.additionalDetails">
<!-- ko if: $index() !== 0 -->
<span> | </span>
<!-- /ko -->
<span data-bind="text: name"></span> <span data-bind="text: value"></span>
</div>
結果は
Model #: UAI5021 | Catalog #: UIOY786