Ember.js 1.10 - 无法在 'Element' 上执行 'setAttribute':'"' 不是有效的属性名称
Ember.js 1.10 - Failed to execute 'setAttribute' on 'Element': '"' is not a valid attribute name
从 Ember.js 1.9 升级到 1.10 后,出现以下错误 -
未捕获 InvalidCharacterError:无法在 'Element' 上执行 'setAttribute':'"' 不是有效的属性名称。
prototype.setAttribute = function(element, name, value) {
element.setAttribute(name, String(value));
};
值为:
value: ""
name: """
element: <span></span>
找出升级可能存在的问题以及应该解决的问题的最简单方法是什么?错误不是很友好。
故障排除步骤:
- 打开编译后的模板(在我的例子中它在堆栈跟踪 VM.js:XXXX)。
- 仔细阅读。
在我的例子中它包含
var el1 = dom.createElement("span");
dom.setAttribute(el1,"\"","");
dom.appendChild(el0, el1);
- 对应这些行的开源模板。
例如
<span {{action "setUrgency" urgentItem.urgency}} {{bind-attr class=urgentItem.styleClass}}"></span>
- 删除 '(这是一个问题)。
这个问题是由不正确的模板引起的(HTMLBars 能够在没有警告的情况下编译它)但是在执行编译的模板时发生错误。模板修复后,一切正常。
从 Ember.js 1.9 升级到 1.10 后,出现以下错误 -
未捕获 InvalidCharacterError:无法在 'Element' 上执行 'setAttribute':'"' 不是有效的属性名称。
prototype.setAttribute = function(element, name, value) {
element.setAttribute(name, String(value));
};
值为:
value: ""
name: """
element: <span></span>
找出升级可能存在的问题以及应该解决的问题的最简单方法是什么?错误不是很友好。
故障排除步骤:
- 打开编译后的模板(在我的例子中它在堆栈跟踪 VM.js:XXXX)。
- 仔细阅读。
在我的例子中它包含
var el1 = dom.createElement("span");
dom.setAttribute(el1,"\"","");
dom.appendChild(el0, el1);
- 对应这些行的开源模板。
例如
<span {{action "setUrgency" urgentItem.urgency}} {{bind-attr class=urgentItem.styleClass}}"></span>
- 删除 '(这是一个问题)。
这个问题是由不正确的模板引起的(HTMLBars 能够在没有警告的情况下编译它)但是在执行编译的模板时发生错误。模板修复后,一切正常。