新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)GoFrame教程:GoFrame分頁管理-自定義分頁
由于分頁對象預(yù)定義的樣式比較有限,有的時(shí)候我們想自定義分頁的樣式或者標(biāo)簽,由于分頁對象的的所有屬性和方法都是公開的,這便為開發(fā)者自定義分頁樣式提供了非常高的靈活度。開發(fā)者可以通過以下方式實(shí)現(xiàn)自定義分頁內(nèi)容:

成都創(chuàng)新互聯(lián)公司自2013年創(chuàng)立以來,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、外貿(mào)網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢想脫穎而出為使命,1280元古城做網(wǎng)站,已為上家服務(wù),為古城各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:028-86922220
- 對輸出內(nèi)容進(jìn)行正則匹配替換實(shí)現(xiàn)自定義。
- 根據(jù)分頁對象公開的屬性和方法自行組織分頁內(nèi)容實(shí)現(xiàn)自定義。
自定義標(biāo)簽替換
package main
import (
"github.com/GOgf/gf/v2/frame/g"
"github.com/gogf/gf/v2/net/ghttp"
"github.com/gogf/gf/v2/os/gview"
"github.com/gogf/gf/v2/text/gstr"
"github.com/gogf/gf/v2/util/gpage"
)
// wrapContent wraps each of the page tag with html li and ul.
func wrapContent(page *gpage.Page) string {
content := page.GetContent(4)
content = gstr.ReplaceByMap(content, map[string]string{
"": "/span>",
"": "/a>",
})
return "" + content + "
"
}
func main() {
s := g.Server()
s.BindHandler("/page/custom1/*page", func(r *ghttp.Request) {
page := r.GetPage(100, 10)
content := wrapContent(page)
buffer, _ := gview.ParseContent(`
{{.page}}
`, g.Map{
"page": content,
})
r.Response.Write(buffer)
})
s.SetPort(10000)
s.Run()
}執(zhí)行后,頁面輸出結(jié)果為:
定義分頁標(biāo)簽名稱
package main
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/net/ghttp"
"github.com/gogf/gf/v2/os/gview"
"github.com/gogf/gf/v2/util/gpage"
)
// pageContent customizes the page tag name.
func pageContent(page *gpage.Page) string {
page.NextPageTag = "NextPage"
page.PrevPageTag = "PrevPage"
page.FirstPageTag = "HomePage"
page.LastPageTag = "LastPage"
pageStr := page.FirstPage()
pageStr += page.PrevPage()
pageStr += page.PageBar()
pageStr += page.NextPage()
pageStr += page.LastPage()
return pageStr
}
func main() {
s := g.Server()
s.BindHandler("/page/custom2/*page", func(r *ghttp.Request) {
page := r.GetPage(100, 10)
buffer, _ := gview.ParseContent(`
{{.page}}
`, g.Map{
"page": pageContent(page),
})
r.Response.Write(buffer)
})
s.SetPort(10000)
s.Run()
}執(zhí)行后,頁面輸出結(jié)果為:
本文題目:創(chuàng)新互聯(lián)GoFrame教程:GoFrame分頁管理-自定義分頁
本文路徑:http://m.fisionsoft.com.cn/article/dpeejgg.html


咨詢
建站咨詢
