我正在學習如何使用Backbone和Parse創建一個調查網站。 我見過堆棧溢出的類似問題。不過,我的問題有點不同。 在本網站上,用戶可以進行自己的調查。現在假設用戶可以發佈兩種類型的問題:多種選擇和自由迴應。我創建了一個名爲Question的骨幹模型,如下所示。骨幹:一個模型兩個視圖?
//問題型號
//----------------------
var Question = Parse.Object.extend(
"Question", {
//Default attributes for the todo
defaults: {
content: "What's your name",
type: "free_response",
choices: []
},
initialize: function() {
if (!this.get("content")) {
this.set({"content": this.defaults.content});
}
if (!this.get("type")) {
this.set({"type": this.defaults.type});
}
if (!this.get("choices")) {
this.set({"choices": this.defaults.choices});
}
}
});
所以我也想創建QuestionView可顯示的問題。但它應該有不同的選擇和自由迴應。 那麼根據其類型顯示不同的問題的最佳方式是什麼? 謝謝。
你爲什麼手動應用的默認值?在'defaults'中使用數組可能會導致問題,如果要包含可變值,則應該爲'defaults'使用函數。 –
是的,我確實遇到了數組問題,它似乎沒有做我所期望的(這是我可以追加項目到數組)。通過使用函數進行默認值,你的意思是什麼? – user1849043
您可以使用函數['defaults'](http://backbonejs.org/#Model-defaults)而不是對象:'defaults:function(){return {...}}'。這會給你一個不同的模型默認設置。 –