2015-02-08 15 views
4

從Ember.js 1.9升級到1.10後,我得到了下面的錯誤 -Ember.js 1.10 - 無法執行的「元素」的setAttribute':「「」不是一個有效的屬性名稱

未捕獲InvalidCharacterError:失敗在'Element'上執行'setAttribute':'「'不是有效的屬性名稱。

prototype.setAttribute = function(element, name, value) { 
    element.setAttribute(name, String(value)); 
}; 

值是:

value: "" 
name: """ 
element: <span></span> 

什麼是查找問題可能是與升級,哪些應該是固定的最簡單的方法?該錯誤不是非常用戶友好的。

回答

6

的步驟來解決:

  1. 打開編譯模板(在我的情況下,它是在堆棧跟蹤VM.js:XXXX)。
  2. 仔細閱讀。

在我的情況包含

var el1 = dom.createElement("span"); 
dom.setAttribute(el1,"\"",""); 
dom.appendChild(el0, el1); 
對應這些線
  • 開源模板。
  • 例如

    <span {{action "setUrgency" urgentItem.urgency}} {{bind-attr class=urgentItem.styleClass}}"></span> 
    
  • 刪除「(這是一個問題)。
  • 此問題是由不正確的模板引起的(HTMLBars能夠在沒有警告的情況下對其進行編譯),但是在執行已編譯的模板期間發生了錯誤。一旦模板被修復,一切工作正常。

    +0

    這應該被添加到您的原始問題,而不是作爲答案添加。 – 2015-02-09 00:50:30

    +2

    這是一個完整的答案傢伙。 – 2015-02-09 13:33:32

    +0

    Ember 2.7中也出現此錯誤。它基本上抱怨格式不正確的句柄代碼。 – RyanNerd 2016-08-04 21:18:07

    相關問題