knockout.js using $index with if binding knockout.js using $index with if binding javascript javascript

knockout.js using $index with if binding


$index is an observable, and observables are functions. When you use observables in an expression you must use the () form to access the value.

<!-- ko if: $index() === 0 -->


From the knockout bindings page

$index (only available within foreach bindings)

This is the zero-based index of the current array entry being rendered by a foreach binding. Unlike the other binding context properties, $index is an observable and is updated whenever the index of the item changes (e.g., if items are added to or removed from the array).

Example

<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>

Results in

Model #: UAI5021 | Catalog #: UIOY786