Je me retrouve constamment à utiliser cet idiome dans des modèles HTML basés sur KO:
<!-- 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 -->
Existe-t-il un moyen meilleur / plus propre de faire des conditions dans KO, ou y a-t-il une meilleure approche que d'utiliser simplement des constructions if-else traditionnelles?
De plus, je voudrais juste souligner que certaines versions d'Internet Explorer (IE 8/9) n'analysent pas correctement l'exemple ci-dessus. Veuillez consulter cette question SO pour plus d'informations. Le résumé rapide est de ne pas utiliser de commentaires (liaisons virtuelles) à l'intérieur des balises de table pour prendre en charge IE. Utilisez tbody
plutôt le:
<tbody data-bind="if: display"><tr><td>hello</td></tr></tbody>