2013-08-22 24 views
3

我多次使用view幫助程序,爲了呈現相同的模板,但每次使用不同的參數,大多數作爲選項標記的布爾值。聲明失敗,同時呈現多個EmberJS視圖

不過,我得到以下錯誤,每當我渲染超過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」)。

下面是通過添加MyCustomView.init()調用this._super(),與原始JSBin的鏈接。你會發現視圖元素現在有id屬性。

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