antDesign 自定義分頁樣式的實現(xiàn)代碼
原圖
設(shè)計要的效果圖
上代碼
這里用到了自定義指令,如果大家用不到可以安自己的實際效果開發(fā)
創(chuàng)建directive/index.js頁面用于把所有自定義指令可以一次引入
/* * @Author: 周云芳 * @Date: 2022-06-28 15:21:41 * @LastEditors: 周云芳 164591357@qq.com * @LastEditTime: 2022-10-21 14:26:58 * @Description: 用于自動注冊全局自定義指令 * 使用規(guī)則: * 根據(jù)導(dǎo)出的name在頁面使用如directives對象中的name為a-pagination,頁面使用:v-a-pagination */ const requireDirective = require.context('./', true, /\.js$/) // 自定義指令 let directives = {} requireDirective.keys().map(file => { // console.log('file', file) const name = removerLastIndex(file) console.log('name', name) if (name) { directives = { ...directives, [name]: requireDirective(file).default } } return false }) function removerLastIndex(str) { const start = str.substring(2, str.length) // 去除路徑中的./ start=el-drag-dialog/index.js // str = login/index // 獲取最后一個/的索引 const index = start.lastIndexOf('/') // 獲取最后一個/后面的值 const val = start.substring(index + 1, start.length) // 判斷是不是index結(jié)尾 if (val === 'index.js') { return start.substring(index, -1) } return str } export default { install(Vue) { Object.keys(directives).forEach(key => { Vue.directive(key, directives[key]) }) } }
創(chuàng)建分頁指令頁面在directive文件夾下建a-pagination這文件夾下創(chuàng)建兩個文件index.css,index.js
index.js寫業(yè)務(wù)邏輯
/* * @Author: 周云芳 * @Date: 2022-07-19 09:12:39 * @LastEditors: 周云芳 164591357@qq.com * @LastEditTime: 2022-10-21 15:05:49 * @Description:設(shè)置分頁為左右布局 指令使用 v-el-pagination */ import './index.css' export default { inserted: (el, binding) => { setTimeout(() => { // 把分頁條數(shù)放入總條數(shù)后 const options = el.getElementsByClassName('ant-pagination-options')[0] const sizeChange = options.getElementsByClassName( 'ant-pagination-options-size-changer' )[0] // 分頁數(shù) const prev = el.getElementsByClassName('ant-pagination-prev')[0] // // 創(chuàng)建兩個左右div const liDom = document.createElement('li') liDom.className = 'size-change-li' // RDiv.className = 'right-div' liDom.appendChild(sizeChange) el.insertBefore(liDom, prev) // 在上一頁前插入節(jié)點 }, 100) } }
效果:
index.css 進(jìn)行樣式調(diào)整
.size-change-li { display: inline-block; } .ant-pagination-prev .ant-pagination-item-link, .ant-pagination-next .ant-pagination-item-link, .ant-pagination-item { border: none; } .ant-pagination-item { font-family: 'PingFang SC'; font-style: normal; font-weight: 400; font-size: 14px; } .ant-pagination-item-active { background: #3296FA; border-radius: 4px; } .ant-pagination-item-active a,.ant-pagination-item-active:focus a, .ant-pagination-item-active:hover a{ color: #FFFFFF; }
最后效果
最后記得全局自定義指令要在main.js引入
import Directive from '@/directive' Vue.use(Directive)
頁面使用指令 v-a-pagination
<a-pagination v-a-pagination show-quick-jumper show-size-changer :total="total" :show-total="total => `總共 ${total} 條`" @change="onChange" />
到此這篇關(guān)于antDesign 自定義分頁樣式的文章就介紹到這了,更多相關(guān)antDesign 自定義分頁內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
js簡單實現(xiàn)表單中點擊按鈕動態(tài)增加輸入框數(shù)量的方法
這篇文章主要介紹了js簡單實現(xiàn)表單中點擊按鈕動態(tài)增加輸入框數(shù)量的方法,涉及javascript鼠標(biāo)點擊事件及insertAdjacentHTML方法的相關(guān)使用技巧,需要的朋友可以參考下2015-08-08JavaScript數(shù)據(jù)結(jié)構(gòu)中串的表示與應(yīng)用實例
這篇文章主要介紹了JavaScript數(shù)據(jù)結(jié)構(gòu)中串的表示與應(yīng)用,結(jié)合實例形式簡單分析了基于javascript順序操作實現(xiàn)串結(jié)構(gòu)與串的拼接操作相關(guān)技巧,需要的朋友可以參考下2017-04-04js求數(shù)組中全部數(shù)字可拼接出的最大整數(shù)示例代碼
這篇文章主要給大家介紹了利用js如何求數(shù)組中全部數(shù)字可拼接出的最大整數(shù),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考借鑒,下面隨著小編一起來學(xué)習(xí)學(xué)習(xí)吧。2017-08-08Chart.js 輕量級HTML5圖表繪制工具庫(知識整理)
這篇文章主要介紹了Chart.js 輕量級HTML5圖表繪制工具庫,Chart.js基于HTML5 canvas技術(shù)支持所有現(xiàn)代瀏覽器,并且針對IE7/8提供了降級替代方案,感興趣的小伙伴們可以參考一下2018-05-05js中Array.forEach跳出循環(huán)的方法實例
相信大家都知道forEach適用于只是進(jìn)行集合或數(shù)組遍歷,for則在較復(fù)雜的循環(huán)中效率更高,下面這篇文章主要給大家介紹了關(guān)于js中Array.forEach跳出循環(huán)的相關(guān)資料,需要的朋友可以參考下2021-09-09