在所有“现代”浏览器中,以下有效但在 IE8 中无效:
<!-- ko template: {if: $root.itemToEdit.SomeObject() === $data, name: 'EditItemTemplate', afterRender: $root.initializeEditPanel } -->
<!-- /ko -->
我收到以下错误:
SCRIPT5022:无法解析绑定。消息:语法错误:预期的标识符、字符串或数字;绑定值:模板:{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 中不起作用?