渲染多个EmberJS视图时断言失败

时间:2013-08-22 11:02:54

标签: javascript view ember.js

我多次使用view帮助器,以便渲染相同的模板,但每次都使用不同的参数,主要是布尔值作为选项标记。

但是,每当我渲染多个view时,我都会收到以下错误:

Assertion failed: Attempted to register a view with an id already in use: null

我的元素代码没有“余烬ID”,例如id="ember224"

我在JSBin中复制了这个问题:

  

请注意,在JSBin中,您将无法看到控制台中记录的错误   无论什么原因一个简单的复制粘贴到   http://www.embersandbox.com/你可以打开控制台看看   错误本身。

http://jsbin.com/UHOh/1/edit?html,js,output

有谁知道为什么会这样?如果是的话,这可能是个问题吗?其他一切正在按原样运作,现在,所以我倾向于忽略它。

谢谢!

1 个答案:

答案 0 :(得分:26)

您正在覆盖Ember.View的init()方法而不是调用this._super()。这会导致视图无法正确初始化,从而导致视图元素缺少id属性(例如id =“ember224”)。

下面是原始JSBin的链接,添加了调用this._super()的MyCustomView.init()。您会发现视图元素现在具有id属性。

http://jsbin.com/UHOh/11/edit?html,js,output