2013-04-02 105 views
1

T形我根據註釋,以獲得更好的瞭解更新到我的前面的問題Backbone.js的動態類型模型創建它的對象。類似於Java

Uncaught TypeError: Object [object global] has no method 'set' 
*************** backbone-min.js:10 

g.Model 
*************** backbone-min.js:10 

d 
*************** backbone-min.js:38 
(anonymous function) sample.html:110 

那麼是否有可能在backbone.js中做?

+1

該代碼應該正常工作。你有什麼問題?你也可以通過傳遞類並在構造函數中初始化它來進行抽象,如'model:Model(CollectionA)'&'this.data = new obj()' – 2013-04-02 19:17:51

+0

您是否有一個用例會顯示用法與這些集合有不同的接口?否則,動態類型很重要,直到最後一刻纔會忽略類型。 – snedkov

+0

我試過約翰,但它給了我錯誤。我已經更新了代碼。讓我知道我是否犯了錯誤。 – coolcoder

回答

1

我認爲你正在超越它。 Backbone Collection的模型屬性不是很有用。如果你沒有獲取任何東西,你基本上不需要它們。如果你是,雖然,我想你在Backbone's doc錯過的東西:
集合也可以通過重寫該屬性與返回模型的功能包含多態模型。」

哦,你的錯誤來自放入系統行:

model: WrapperModel(new Students()), 

現在,爲什麼不這項工作是很清澈的,但需要大約JavaScript對象//類的一些知識:使用類作爲一個函數WONT創建一個對象,因此你的情況下是不類NOR的一個實例。在這種情況下,這個將作爲錯誤讀取的全局對象,並且Backbone需要一個對象上下文才能正常工作。
您也可以嘗試new WrapperModel(new Students())。你不會有錯誤,但這是行不通的。模型屬性需要一個類。 dr:你的代碼行沒有任何意義。

+0

是否有任何我可以在backbone.js中實現這一點,或者需要堅持我每次做不同的WrapperModel類時所做的任何事情......讓我再次檢查文檔 – coolcoder