我在我的web应用程序中使用主干分页器插件(服务器模式(。这个插件以页面的形式与服务器对话。例如,为了获得第5页的结果,它给出了如下请求(取自paginator服务器示例:http://backbone-paginator.github.io/backbone.paginator/examples/server-mode.html)
https://api.github.com/search/issues?page=5&per_page=15&...
但是我的服务器接受count和offset值,而不是page和per_page。所以,我必须转换
"page=5" to "offset=76" (assuming page size is 15).
类似的
"per_page=15" becomes "count=15".
因此,修改后的请求应该看起来像
https://api.github.com/search/issues?offset=101&count=15&...
我可以使用"queryParams"散列更改参数的名称。但不知道如何将页面=5更改为偏移量=76。
我想我应该重写get*页面方法,但在那里我无法访问查询参数。
我们非常感谢在这方面的任何帮助。
有点晚了,但您可以尝试覆盖queryParams
queryParams: {
currentPage: "page",
pageSize: "offset"
}
和状态
state: {
firstPage: 0,
pageSize: 20
}
当然,如果您喜欢
您可以使用返回pageSize
乘积的函数覆盖state
的currentPage
值。
请注意,文档中指出:
[…]您只应在扩展、初始化或获取后由服务器重置期间重写此值。此值应仅在其他时间读取。
您可能还应该重写parseState
函数,以便正确地接受从后端返回的值。查看文档以了解更多信息。