在所有的“现代”浏览器下面的作品,但不是在IE8:
<!-- ko template: {if: $root.itemToEdit.SomeObject() === $data, name: 'EditItemTemplate', afterRender: $root.initializeEditPanel } -->
<!-- /ko -->
我得到以下错误:
SCRIPT5022:无法解析绑定。 消息:语法错误:预期标识符,字符串或数字; 绑定值:模板:{如果:$ root.itemToEdit.SomeObject()=== $数据,名称: 'EditItemTemplate模板',AfterRender阶段:$ root.initializeEditPanel}
这似乎是列入if
模板定义内声明。 如果我改变的标记来以下,IE8是幸福的:
<!-- ko if: $root.itemToEdit.SomeObject() === $data -->
<!-- ko template: {name: 'EditItemTemplate', afterRender: $root.initializeEditPanel } -->
<!-- /ko -->
<!-- /ko -->
为什么包括if
在我的模板在IE8无法正常工作说法?