6
该敲除2.1绑定表达式工作Firefox和IE9下细,但崩溃在IE9兼容模式:IE版本引发错误,错误“<em>预期标识符,字符串或数字</em>““预期标识符,字符串或数字”
<div data-bind="template: {
if: myDataModel,
data: myDataModel,
afterRender: setup(myDataModel) }">
我发现实际发生下的调试器,它的这行代码(敲除2.1.0.debug.js):
return new Function("sc", functionBody)
functionBody
等于上面的表达式的字符串。我试图玩空格和回车字符 - 没有什么帮助,结果相同:除了IE9兼容模式以外,任何浏览器都能正常工作
有什么建议吗?
你是完全正确的,现在用''if''表达它工作正常。 Knockout.js文档没有提及它,它们的网站http://knockoutjs.com上的'if'语句的所有示例没有引号,尽管它们声明了IE6 +的框架作品,但似乎并非如此 – YMC
@YMC:内部,淘汰赛确保引用绑定中的所有顶级属性。它不能为嵌套的对象文字做同样的事情。这就是为什么正常淘汰赛如果绑定似乎没有问题。你只需养成引用这些对象的属性名称的习惯。 –
@Jeff Mercado我看到了,但是我的抱怨并不是因为缺少错误信息,而是因为缺少在自己的网站上引用“if”语句自己的示例 – YMC