NETCore-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽-創(chuàng)新互聯(lián)

1.繼承父類TagHelper并重寫Process方法(這里還有一個(gè)異步的方法ProcessAsync各位可以自己嘗試下)

成都創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站制作、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的四子王網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

2.注意:怎么在試圖頁(yè)面使用自定義標(biāo)簽

3.注意:怎么識(shí)別標(biāo)簽中的屬性

4.注意:自定義標(biāo)簽類怎么獲取分頁(yè)參數(shù)

5.效果展示

下面一步一個(gè)腳印的來(lái)分享:

1.繼承父類TagHelper并重寫Process方法(這里還有一個(gè)異步的方法ProcessAsync各位可以自己嘗試下)

首先咋們定義一個(gè)類取名為PagerTagHelper,這里需要繼承TagHelper類,重寫Process方法,TagHelper位于命名空間Microsoft.AspNetCore.Razor.TagHelpers下面,因?yàn)檫@里要實(shí)現(xiàn)的效果是mvc分頁(yè),所以還需要通過(guò)nuget獲取引用Microsoft.AspNetCore.Mvc.TagHelpers,引用后如圖:

NET Core-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽

這里的版本是1.0.0-rc2-final,之前直接通過(guò)nuget引用默認(rèn)版本是1.0.0版本如圖本地已經(jīng)下載了兩個(gè)版本:

NET Core-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽

各位需要注意版本一直,不然還原程序包的時(shí)候會(huì)出錯(cuò)

2.注意:怎么在試圖頁(yè)面使用自定義標(biāo)簽

如果要在html中使用定義的標(biāo)簽,需要注意命名規(guī)則如圖上面定義的類:

NET Core-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽

標(biāo)簽類必須以TagHelper結(jié)尾,然后在試圖中使用如圖所示:

NET Core-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽

這里的pager就是上面PagerTagHelper對(duì)應(yīng)的標(biāo)簽,去掉固定的TagHelper然后剩余Pager,因?yàn)閔tml標(biāo)簽都是小寫所以是pager,咋們先在Process中打個(gè)斷點(diǎn)然后F5調(diào)試,可以看到進(jìn)入了咋們重寫的方法中,這樣pager標(biāo)簽就和標(biāo)簽類對(duì)應(yīng)上了

3.注意:怎么識(shí)別標(biāo)簽中的屬性

咋們?cè)谧远x標(biāo)簽類中定義個(gè)屬性(這里因?yàn)橐龇猪?yè)所以這里直接定義個(gè)分頁(yè)參數(shù)的對(duì)應(yīng)屬性類當(dāng)做標(biāo)簽類的屬性),分頁(yè)參數(shù)類如下:

NET Core-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽 View Code

然后定義的屬性PagerOption截圖如:

NET Core-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽

這里要讓定義的屬性在標(biāo)簽中能使用需要注意在html中小寫,然后首個(gè)單詞后面以'-'和后面的單詞隔開,下面是試圖標(biāo)簽中使用定義的屬性:

NET Core-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽

注意:

*單詞大小寫

*首個(gè)單詞后'-'分割(屬性名稱是PagerOption對(duì)應(yīng)pager-option這個(gè)細(xì)節(jié)不容忽視)

4.注意:自定義標(biāo)簽類怎么獲取分頁(yè)參數(shù)

這里用到上面第3點(diǎn)的屬性節(jié)點(diǎn)來(lái)傳遞參數(shù),先看一下咋們?cè)贑ontroller定義的列表數(shù)據(jù)和分頁(yè)數(shù)據(jù)封裝如下:

NET Core-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽 View Code

然后在試圖對(duì)應(yīng)的自定義分頁(yè)標(biāo)簽屬性中:

NET Core-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽 View Code

就是這么簡(jiǎn)單,通過(guò)標(biāo)簽屬性直接傳遞到標(biāo)簽類中的屬性上,需要更詳細(xì)跟中的朋友可以F5調(diào)試下看看結(jié)果,以上就是這次分享的注意點(diǎn),需要注意這幾個(gè) output.TagName = "div"這個(gè)是定義一個(gè)包含了重新元素的父級(jí)元素,output.TagMode是標(biāo)簽在html中表現(xiàn)形式,再來(lái)就是自定義標(biāo)簽類的全部代碼:

NET Core-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽 View Code

5.效果展示

分頁(yè)效果:

NET Core-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽

右鍵查看瀏覽器中的html元素:

NET Core-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

文章題目:NETCore-TagHelper實(shí)現(xiàn)分頁(yè)標(biāo)簽-創(chuàng)新互聯(lián)
網(wǎng)址分享:http://muchs.cn/article8/cshoip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)、自適應(yīng)網(wǎng)站、網(wǎng)站內(nèi)鏈、企業(yè)網(wǎng)站制作、電子商務(wù)、網(wǎng)站導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)