Backbone.js 在主干网中实现分页
我正在尝试用主干网实现一个非常基本的分页和过滤支持 到目前为止,我的Collection.url()函数中有如下内容:Backbone.js 在主干网中实现分页,backbone.js,pagination,Backbone.js,Pagination,我正在尝试用主干网实现一个非常基本的分页和过滤支持 到目前为止,我的Collection.url()函数中有如下内容: url: function() { var url = 'http://localhost:9000/wines'; var query = ''; if (this.filter) query += '&filter=' + this.filter; if (this.order) query += '&order=' + this.
url: function() {
var url = 'http://localhost:9000/wines';
var query = '';
if (this.filter) query += '&filter=' + this.filter;
if (this.order) query += '&order=' + this.order;
if (this.page) query += '&page=' + this.page.toString();
if (this.len) query += '&len=' + this.len.toString();
if (query) url += '?' + query.substring(1);
return url;
},
你明白了吗
问题是,当我试图创建(发布)或更新(放置)项目时,查询字符串也会发送到浏览器
在url函数中是否有某种方法可以检测我正在发出的操作,并仅在获取(GET)数据时添加querystring参数
或者你会推荐另一种方法吗?我找到了以下方法 我只是重写fetch方法,如下所示:
initialize: function(options) {
this._fetch = this.fetch;
this.fetch = function() {
options = {};
options.url = 'http://localhost:9000/wines'
data = {};
if (this.filter) data.filter = this.filter;
if (this.order) data.order = this.order;
if (this.page) data.page = this.page;
if (this.len) data.len = this.len;
options.data = data;
return this._fetch(options);
}
},
我找不到避免保存_fetch变量的方法,我用
返回Backbone.Collection.fetch(选项);
返回Backbone.Collection.prototype.fetch(选项)
返回葡萄酒。提取(选项);
返回葡萄酒。原型。提取(选项)
但它们似乎都不起作用
--
编辑
在主干页面上找到它:
返回Backbone.Collection.prototype.fetch.call(this,options)