摘要:分頁(yè)原理首先,注意了表格分頁(yè)是需要后端支撐的以下幾個(gè)步驟實(shí)現(xiàn)分頁(yè)由前端發(fā)送包含分頁(yè)信息的參數(shù),這是由自動(dòng)實(shí)現(xiàn)的。這時(shí)可以通過(guò)初始化配置對(duì)數(shù)據(jù)進(jìn)行重組。
GridManager 分頁(yè)原理:
首先, 注意了: GridManager 表格分頁(yè)是需要 后端支撐 的.以下幾個(gè)步驟實(shí)現(xiàn)分頁(yè):
由前端發(fā)送包含分頁(yè)信息的參數(shù), 這是由 GridManager 自動(dòng)實(shí)現(xiàn)的。 該參數(shù)包含以下信息{cPage: 當(dāng)前頁(yè), pSize: 每頁(yè)顯示條數(shù)}
后端解析請(qǐng)求, 并根據(jù)分頁(yè)參數(shù)返回當(dāng)前頁(yè)的數(shù)據(jù), 數(shù)據(jù)格式如下:
{ "data":[ // 分頁(yè)必須存在的屬性, 屬性名可通過(guò)配置項(xiàng)dataKey進(jìn)行變更 { "name": "baukh", "age": "28", "createDate": "2015-03-12", "info": "野生前端程序", "operation": "修改" }, { "name": "baukh", "age": "28", "createDate": "2015-03-12", "info": "野生前端程序", "operation": "修改" } ], "totals": 8 // 分頁(yè)必須存在的屬性, 屬性名可通過(guò)配置項(xiàng)totalsKey進(jìn)行變更 }
前端通過(guò)返回?cái)?shù)據(jù)自動(dòng)渲染。
后端接收參數(shù)與 GridManager 不符怎么辦?打服為止,強(qiáng)勢(shì)要求后端按前端規(guī)則修改接口(后端同學(xué)表示呵呵噠)
通過(guò)初始化配置參 requestHandler 對(duì) GridManager 中使用的分頁(yè)參數(shù)進(jìn)行調(diào)整; 后端接到的參數(shù)將是調(diào)整后的參數(shù),調(diào)整方式如下:
document.querySelector("table").GM("init", { supportAjaxPage: true, // 啟用分頁(yè) requestHandler: function(request){ request.newParams = "這個(gè)參數(shù)是通過(guò) requestHandler 函數(shù)新增的"; return request; }, // 其它配置項(xiàng)... });后端返回?cái)?shù)據(jù)不符怎么辦? 僅返回字段名不符
如: 一級(jí)數(shù)據(jù)中的 data 與 totals, 可以使用 dataKey 和 totalsKey 進(jìn)行調(diào)整。
后端返回?cái)?shù)據(jù)為:
{ "list":[ // GridManager 期望返回的是 data, 而這里返回了 list { "name": "baukh", "age": "28", "createDate": "2015-03-12", "info": "野生前端程序", "operation": "修改" }, { "name": "baukh", "age": "28", "createDate": "2015-03-12", "info": "野生前端程序", "operation": "修改" } ], "number": 8 // GridManager 期望返回的是 totals, 而這里返回了 number }
解決方式:
document.querySelector("table").GM("init", { supportAjaxPage: true, // 啟用分頁(yè) dataKey: "list", // 指定數(shù)組 key 為 list totalsKey: "number", // 指定總數(shù) key 為 number requestHandler: function(request){ request.newParams = "這個(gè)參數(shù)是通過(guò) requestHandler 函數(shù)新增的"; return request; }, // 其它配置項(xiàng)... });后端返回?cái)?shù)據(jù)與 前端期望返回的數(shù)據(jù)出入較大
如數(shù)組中的 createDate, 期望返回的是時(shí)間戳, 而返回的為字符串。 這時(shí)可以通過(guò)初始化配置 responseHandler 對(duì)數(shù)據(jù)進(jìn)行重組。
后端返回?cái)?shù)據(jù)為:
{ "list":[ // GridManager 期望返回的是 data, 而這里返回了 list { "name": "baukh", "age": "28", "createDate": "2015-03-12", // 返回的是字符串 "info": "野生前端程序", "operation": "修改" }, { "name": "baukh", "age": "28", "createDate": "2015-03-12", // 返回的是字符串 "info": "野生前端程序", "operation": "修改" } ], "number": 8 // GridManager 期望返回的是 totals, 而這里返回了 number }
前端期望返回的是:
{ "data":[ { "name": "baukh", "age": "28", "createDate": 1426118400000, // 期望返回時(shí)間戳 "info": "野生前端程序", "operation": "修改" }, { "name": "baukh", "age": "28", "createDate": 1426118400000, // 期望返回時(shí)間戳 "info": "野生前端程序", "operation": "修改" } ], "totals": 8 }
解決方式:
document.querySelector("table").GM("init", { supportAjaxPage: true, // 啟用分頁(yè) dataKey: "list", // 指定數(shù)組 key 為 list totalsKey: "number", // 指定總數(shù) key 為 number responseHandler: function(response){ // 將返回?cái)?shù)據(jù)中的 createDate 修改為 時(shí)間戳 response.list = response.data.map(function(item){ item.createDate = new Date(item.createDate).getTime(); return item; }); return response; }, // 其它配置項(xiàng)... });
更多API,請(qǐng)點(diǎn)擊API進(jìn)入
歡迎star github
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/105861.html
摘要:基于的封裝用于便捷的在中使用除過(guò)特性外,其它與相同。非必設(shè)項(xiàng)篩選條件列表數(shù)組對(duì)象。格式在使用時(shí)該參數(shù)為必設(shè)項(xiàng)。并且使用服務(wù)需要提前通過(guò)將注冊(cè)至全局組件。刷新或更新查詢(xún)條件或其它更多請(qǐng)直接訪問(wèn)查看當(dāng)前版本 GridManager Vue 基于 Vue 的 GridManager 封裝, 用于便捷的在 Vue 中使用GridManager. 除過(guò)Vue特性外,其它API與GridManag...
摘要:基于的封裝用于便捷的在中使用除過(guò)特性外,其它與相同。刷新更新查詢(xún)條件其它更多請(qǐng)直接訪問(wèn)查看當(dāng)前版本的版本的版本 GridManager React 基于 React 的 GridManager 封裝, 用于便捷的在 React 中使用GridManager. 除過(guò)React特性外,其它API與GridManager API相同。 showImg(https://segmentfault...
摘要:非必設(shè)項(xiàng)篩選條件列表數(shù)組對(duì)象。格式在使用時(shí)該參數(shù)為必設(shè)項(xiàng)。前端雞湯前端框架前端相關(guān)篩選選中項(xiàng),字符串默認(rèn)為。非必設(shè)項(xiàng),選中的過(guò)濾條件將會(huì)覆蓋否為多選布爾值默認(rèn)為。刷新更新查詢(xún)條件其它更多請(qǐng)直接訪問(wèn)查看當(dāng)前版本 GridManager Angular 1.x 基于 Angular 1.x 的 GridManager 封裝, 用于便捷的在 Angular 中使用GridManager. s...
摘要:優(yōu)勢(shì)純?cè)鷮?shí)現(xiàn),不依賴(lài)任何框架使用簡(jiǎn)單快捷,功能強(qiáng)大與用戶(hù)進(jìn)行溝通,采納來(lái)自于使用的需求,并不間段的進(jìn)行升級(jí)維護(hù)特色功能表格的列寬度可進(jìn)行拖拽式調(diào)整表格的列位置進(jìn)行拖拽式調(diào)整可通過(guò)配置對(duì)列進(jìn)行顯示隱藏轉(zhuǎn)換在表存在可視區(qū)域的情況下表頭將一直存 GridManager showImg(https://segmentfault.com/img/bV4Mff?w=1146&h=538); 優(yōu)勢(shì)...
摘要:基于的封裝用于便捷的在中使用除過(guò)特性外,其它與相同。非必設(shè)項(xiàng)篩選條件列表數(shù)組對(duì)象。格式在使用時(shí)該參數(shù)為必設(shè)項(xiàng)。非必設(shè)項(xiàng),選中的過(guò)濾條件將會(huì)覆蓋否為多選布爾值默認(rèn)為。刷新更新查詢(xún)條件其它更多請(qǐng)直接訪問(wèn)查看當(dāng)前版本 GridManager Vue 基于 Vue 的 GridManager 封裝, 用于便捷的在 Vue 中使用GridManager. 除過(guò)Vue特性外,其它API與GridM...
閱讀 1129·2021-11-24 09:39
閱讀 1431·2021-11-18 13:18
閱讀 2578·2021-11-15 11:38
閱讀 1896·2021-09-26 09:47
閱讀 1715·2021-09-22 15:09
閱讀 1691·2021-09-03 10:29
閱讀 1594·2019-08-29 17:28
閱讀 3013·2019-08-29 16:30