Ich verwende dieses Idiom ständig in KO-basierten HTML-Vorlagen:
<!-- ko if: isEdit -->
<td><input type="text" name="email" data-bind="value: email" /></td>
<!-- /ko -->
<!-- ko ifnot: isEdit -->
<td data-bind="text: email"></td>
<!-- /ko -->
Gibt es eine bessere / sauberere Möglichkeit, Bedingungen in KO zu erfüllen, oder gibt es eine bessere Ansatz als nur die Verwendung traditioneller if-else-Konstrukte?
Außerdem möchte ich nur darauf hinweisen, dass einige Versionen von Internet Explorer (IE 8/9) das obige Beispiel nicht korrekt analysieren. Weitere Informationen finden Sie in dieser SO-Frage . Die kurze Zusammenfassung lautet: Verwenden Sie keine Kommentare (virtuelle Bindungen) in Tabellen-Tags, um den IE zu unterstützen. Verwenden Sie tbody
stattdessen:
<tbody data-bind="if: display"><tr><td>hello</td></tr></tbody>