下面的屬性位于_data_對(duì)象中,用來(lái)給一列數(shù)據(jù)分頁(yè)。一些語(yǔ)言和概念是從OpenSearch規(guī)范中借鑒過(guò)來(lái)的。
下面的分頁(yè)數(shù)據(jù)允許各種風(fēng)格的分頁(yè),包括:
在這份指南的最后可以找到如何使用這些屬性來(lái)實(shí)現(xiàn)分頁(yè)的例子。
屬性值類型: 整數(shù)(integer)
父節(jié)點(diǎn): data
結(jié)果集中的條目數(shù)目。應(yīng)該與items.length相等,并作為一個(gè)便利屬性提供。例如,假設(shè)開(kāi)發(fā)者請(qǐng)求一組搜索條目,并且要求每頁(yè)10條。查詢集共有14條。第一個(gè)條目頁(yè)將會(huì)有10個(gè)條目,因此_itemsPerPage_和_currentItemCount_都應(yīng)該等于10。下一頁(yè)的條目還剩下4條;_itemsPerPage_仍然是10,但是_currentItemCount_是4.
示例:
{
"data": {
// "itemsPerPage" 不需要與 "currentItemCount" 匹配
"itemsPerPage": 10,
"currentItemCount": 4
}
}
屬性值類型: 整數(shù)(integer)
父節(jié)點(diǎn): data
items結(jié)果的數(shù)目。未必是data.items數(shù)組的大?。蝗绻覀儾榭吹氖亲詈笠豁?yè),data.items的大小可能小于itemsPerPage。但是,data.items的大小不應(yīng)超過(guò)itemsPerPage。
示例:
{
"data": {
"itemsPerPage": 10
}
}
屬性值類型: 整數(shù)(integer)
父節(jié)點(diǎn): data
data.items中第一個(gè)條目的索引。為了一致,_startIndex_應(yīng)從1開(kāi)始。例如,第一組items中第一條的_startIndex_應(yīng)該是1。如果用戶請(qǐng)求下一組數(shù)據(jù),_startIndex_可能是10。
示例:
{
"data": {
"startIndex": 1
}
}
屬性值類型: 整數(shù)(integer)
父節(jié)點(diǎn): data
當(dāng)前集合中可用的總條目數(shù)。例如,如果用戶有100篇博客文章,響應(yīng)可能只包含10篇,但是_totalItems_應(yīng)該是100。
示例:
{
"data": {
"totalItems": 100
}
}
屬性值類型: 字符串(string)
父節(jié)點(diǎn): data
URL模板指出用戶可以如何計(jì)算隨后的分頁(yè)鏈接。URL模板中也包含一些保留變量名:表示要載入的條目的{index},和要載入的頁(yè)面的{pageIndex}。
示例:
{
"data": {
"pagingLinkTemplate": "http://www.google.com/search/hl=en&q=chicago+style+pizza&start={index}&sa=N"
}
}
屬性值類型: 整數(shù)(integer)
父節(jié)點(diǎn): data
條目的當(dāng)前頁(yè)索引。為了一致,_pageIndex_應(yīng)從1開(kāi)始。例如,第一頁(yè)的_pageIndex_是1。_pageIndex_也可以通過(guò)基于條目的分頁(yè)而計(jì)算出來(lái)pageIndex = floor(startIndex / itemsPerPage) + 1。
示例:
{
"data": {
"pageIndex": 1
}
}
屬性值類型: 整數(shù)(integer)
父節(jié)點(diǎn): data
當(dāng)前結(jié)果集中的總頁(yè)數(shù)。_totalPages_也可以通過(guò)上面基于條目的分頁(yè)屬性計(jì)算出來(lái):?totalPages = ceiling(totalItems / itemsPerPage).。
示例:
{
"data": {
"totalPages": 50
}
}
更多建議: