我正在使用Backbone.js建立我的第一个网络应用程序,其中我有一个模型(这是一个"引用"),我可以从几个来源获取API。例如,有一个电话会获得最新的报价:
'/quote/latest'
我从中得到一个随机的一个:
'/quote/random'
还有更多变化。所以为了得到第一个,我首先制作了这个简单的模型:
var QuoteModel = Backbone.Model.extend({
urlRoot: 'quote/latest'
});
我现在必须为每个网址制作一个模型吗?或者我如何使这个QuoteModel动态化?欢迎所有提示!
答案 0 :(得分:2)
urlRoot可以是一个返回所需urlRoot的函数。一个简单的例子可能是覆盖提取你想要获取的提取
var QuoteModel = Backbone.Model.extend({
urlRoot: function(){
return "/quote/"+this.request
},
fetch:function(request){
this.request = request;
Backbone.Model.prototype.fetch.call(this);
}
});
var quoteModel = new QuoteModel();
quoteModel.fetch("new");