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

wal*_*tfy 3 javascript view ember.js

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

但是,每当我渲染多于1个时,我都会收到以下错误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

有谁知道为什么会这样?如果是的话,这可能是个问题吗?到目前为止,其他所有工作都应该正常工作,所以我倾向于忽略它.

谢谢!

小智 26

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

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

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