gf框架之分頁模組 一 基本介紹

2021-09-13 19:17:13 字數 1744 閱讀 9467

分頁管理由gpage包實現,gpage提供了強大的動態分頁及靜態分頁功能,並且為開發者自定義分頁樣式提供了極高的靈活度。

使用方式:

import "gitee.com/johng/gf/g/util/gpage"
方法列表:godoc.org/github.com/johng-cn/gf/g/util/gpage

func new(totalsize, perpage int, currentpage inte***ce{}, url string, route ...string) *page

func (page *page) enableajax(actionname string)

func (page *page) firstpage(styles ...string) string

func (page *page) getcontent(mode int) string

func (page *page) getlink(url, text, title, style string) string

func (page *page) geturl(pageno int) string

func (page *page) lastpage(styles ...string) string

func (page *page) nextpage(styles ...string) string

func (page *page) pagebar(styles ...string) string

func (page *page) prevpage(styles ...string) string

func (page *page) selectbar() string

我們這裡需要著重說明的是三個方法,newgetcontentenableajax

new方法中,前面三個引數很簡單,見名知意。

第四個引數url string是當前請求頁面的url,可以是完整的url位址,如:;也可以是uri絕對路徑位址,如:/list?type=10#anchor;該引數是用於分頁管理器計算分頁url位址的基礎。

第五個引數route...string是乙個可選引數,表示當前請求頁面的路由匹配規則(如:/user/list/:page,或者/order/list/*order-page),當使用靜態分頁時,該引數為必傳項,以便分頁管理器能夠智慧型替換靜態uri中對應的分頁引數。

具體使用示例請檢視後續章節。

方法getcontent提供了預定義的常見的分頁樣式,以便於開發者快速使用。當預定義的樣式無法滿足開發者需求時,開發者可以使用公開的方法來自定義分頁樣式(或者進行方法過載來實現自定義),也可以使用正則替換指定預定義的分頁樣式中的部分內容來實現自定義。

具體使用示例請檢視後續章節。

方法enableajax給定乙個ajax方法名,用於實現ajax分頁,但是需要注意的是,該ajax方法名稱需要前後端約定統一,並且該ajax方法只有乙個url引數。以下是乙個ajax方法的客戶端定義示例:

function doajax(url)
具體使用示例請檢視後續章節。

gf框架之分頁模組 五 自定義分頁

由於分頁物件預定義的樣式比較有限,有的時候我們想自定義分頁的樣式 標籤輸出 由於分頁物件的的所有方法都是公開的,這便為開發者自定義分頁樣式提供了非常高的靈活度。開發者可以通過以下方式實現自定義分頁內容 推薦 對輸出內容進行正則匹配替換實現自定義 根據分頁物件公開的方法自行組織分頁內容實現自定義 也可...

gf框架之gmlock 記憶體鎖模組

記憶體鎖。該模組包含兩個物件特性 locker記憶體鎖,支援按照給定鍵名生成記憶體鎖,並支援try lock及鎖過期特性 mutex對標準庫底層sync.mutex的封裝,增加了try lock特性 使用方式 import gitee.com johng gf g os gmlock 使用場景 任何...

C 框架程式設計動態載入模組(一)

在之前分享的部落格中,我已經實現了乙個靜態載入的小框架,這個框架的模組已經在 中確定,一旦生成程式,模組將無法改變。但在實際應用的大型專案中,我們更傾向於使用動態載入模組的框架,這樣對於專案的移植更加靈活和方便,因此今天我就來實現這個效果,和大家一起分享。先看結果展示 大家看這個 是不是有種眼花繚亂...