Usando modelos de eliminação condicional com o IE8

Em todos os navegadores "modernos", os seguintes trabalhosmas não no IE8:

<code><!-- ko template: {if: $root.itemToEdit.SomeObject() === $data, name: 'EditItemTemplate', afterRender: $root.initializeEditPanel } -->
<!-- /ko -->
</code>

Estou tendo o erro a seguir:

SCRIPT5022: Não é possível analisar as ligações. Mensagem: SyntaxError: Identificador esperado, string ou número; Valor das ligações: template: {if: $ root.itemToEdit.SomeObject () === $ data, nome: 'EditItemTemplate', afterRender: $ root.initializeEditPanel}

Parece ser a inclusão doif instrução dentro da definição do modelo. Se eu mudar a marcação para o seguinte, o IE8 está feliz:

<code><!-- ko if: $root.itemToEdit.SomeObject() === $data -->
   <!-- ko template: {name: 'EditItemTemplate', afterRender: $root.initializeEditPanel } -->
   <!-- /ko -->
<!-- /ko -->
</code>

Por que incluir umif declaração no meu modelo não funciona no IE8?

questionAnswers(1)

yourAnswerToTheQuestion