我多次使用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
有谁知道为什么会这样?如果是的话,这可能是个问题吗?其他一切正在按原样运作,现在,所以我倾向于忽略它。
谢谢!
答案 0 :(得分:26)
您正在覆盖Ember.View的init()方法而不是调用this._super()。这会导致视图无法正确初始化,从而导致视图元素缺少id属性(例如id =“ember224”)。
下面是原始JSBin的链接,添加了调用this._super()的MyCustomView.init()。您会发现视图元素现在具有id属性。