Я постійно використовую цю ідіому в шаблонах HTML на основі 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 -->
Чи існує кращий / чистіший спосіб зробити умовні умови в KO, чи є кращий підхід, ніж просто використання традиційних конструкцій if-else?
Крім того, я хотів би лише зазначити, що деякі версії Internet Explorer (IE 8/9) не аналізують наведений вище приклад правильно. Будь ласка, перегляньте це питання для отримання додаткової інформації. Короткий підсумок: не використовуйте коментарі (віртуальні прив'язки) всередині тегів таблиці для підтримки IE. Використовуйте tbodyзамість цього:
<tbody data-bind="if: display"><tr><td>hello</td></tr></tbody>