我將使用Backbone.js創建一個Web應用程序。Backbone.js Dyanamic模型
我有一個Web服務,它會告訴我需要我的模型的哪些字段,所以考慮到這一點,我無法創建一個靜態模型,以便爲我的應用程序創建一個動態模型,當我的web JSON服務,我將如何去做這件事?
我需要使用model.urlRoot()嗎?
我將使用Backbone.js創建一個Web應用程序。Backbone.js Dyanamic模型
我有一個Web服務,它會告訴我需要我的模型的哪些字段,所以考慮到這一點,我無法創建一個靜態模型,以便爲我的應用程序創建一個動態模型,當我的web JSON服務,我將如何去做這件事?
我需要使用model.urlRoot()嗎?
如果您想爲模型設置自定義網址,則應使用urlRoot。欲瞭解更多信息,請閱讀urlRoot backbone docs。
你會調用相同的URL,給你想要的字段作爲參數嗎?如果你這樣做,所以你不一定需要更改urlRoot或其他任何東西。
如果你這樣做:
var MyModel = Backbone.Model.extend({});
這將是動態的了。它將擁有來自您返回的JSON的所有屬性,並且每次更改都無關緊要。
但是,如果你願意,你可以改變urlRoot。
var MyModel = Backbone.Model.extend({urlRoot : '/books'});
你甚至可以把它定義爲一個函數,將返回不同的URL取決於你有一定的條件,如:
var MyModel = Backbone.Model.extend({
urlRoot : function() {
return '/books/' + this.get("anyField");
}
});