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