2012-07-03 4 views
71

Ich versuche, einige Markup basierend auf dem Wert von $index zeigen, kann ich den Wert anzeigen, aber ich kann nicht scheinen, es mit einer if Bindung zu verwenden, was ist das Beste nähern Sie sich hier?

<!-- ko if: $index===0 --> 
    <div>some mark up here</div> 
<!-- /ko --> 

Antwort

128

$ Index ist ein beobachtbares und Observables sind Funktionen. Wenn Sie Observables in einem Ausdruck verwenden, müssen Sie das Formular() verwenden, um auf den Wert zuzugreifen.

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

sortiert, danke! – user1255162

+0

vielen Dank! –

11

Vom knockout bindings page

$ index (nur innerhalb foreach Bindungen)

Dies ist der Null-Index des aktuellen Arrayeintrag Bindung durch eine foreach gerendert wird. Im Gegensatz zu den anderen Bindungskontexteigenschaften ist $ index beobachtbar und wird immer dann aktualisiert, wenn sich der Index des Elements ändert (z. B. wenn Elemente zu dem Array hinzugefügt oder daraus entfernt werden).

Beispiel

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

Ergebnisse in

Model #: UAI5021 | Catalog #: UIOY786 
Verwandte Themen