Во всех современных браузерах работает , но не в IE8:
<!-- ko template: {if: $root.itemToEdit.SomeObject() === $data, name: 'EditItemTemplate', afterRender: $root.initializeEditPanel } -->
<!-- /ko -->
Я получаю следующую ошибку:
SCRIPT5022: Невозможно проанализировать привязки. Сообщение: SyntaxError: ожидается идентификатор, строка или номер; Значение привязки: template: {if: $root.itemToEdit.SomeObject() === $data, name: 'EditItemTemplate', afterRender: $root.initializeEditPanel}
Кажется, что включение утверждения if
в определение шаблона. Если я изменю разметку на следующий, IE8 счастлив:
<!-- ko if: $root.itemToEdit.SomeObject() === $data -->
<!-- ko template: {name: 'EditItemTemplate', afterRender: $root.initializeEditPanel } -->
<!-- /ko -->
<!-- /ko -->
Почему включение оператора if
в мой шаблон не работает в IE8?