Files
caszl_server/public/admin/assets/usePaging.36573893.js
quantulr 4d34d854a5 bugfix
2023-11-01 22:35:52 +08:00

2 lines
1.6 KiB
JavaScript

import{O as f}from"./element-plus.647a8209.js";import{d as z,e as P,o as h,c as x,V as S,J as y,u,t as C,a0 as V}from"./@vue.cab01781.js";import{l as m}from"./lodash.60922569.js";const v={class:"pagination"},E=z({__name:"index",props:{modelValue:{default:()=>({})},pageSizes:{default:()=>[15,20,30,40]},layout:{default:"total, sizes, prev, pager, next, jumper"}},emits:["change","update:modelValue"],setup(s,{emit:i}){const l=s,t=P({get(){return l.modelValue},set(g){i("update:modelValue",g)}}),o=()=>{t.value.page=1,i("change")},c=()=>{i("change")};return(g,n)=>{const p=f;return h(),x("div",v,[S(p,y(l,{"pager-count":5,currentPage:u(t).page,"onUpdate:currentPage":n[0]||(n[0]=e=>u(t).page=e),pageSize:u(t).size,"onUpdate:pageSize":n[1]||(n[1]=e=>u(t).size=e),"page-sizes":s.pageSizes,layout:s.layout,total:u(t).count,"hide-on-single-page":!1,onSizeChange:o,onCurrentChange:c}),null,16,["currentPage","pageSize","page-sizes","layout","total"])])}}});function F(s){const{page:i=1,size:l=15,fetchFun:t,params:o={},firstLoading:c=!1,beforeRequest:g,afterRequest:n}=s,p=Object.assign({},C(o)),e=V({page:i,size:l,loading:c,count:0,lists:[],extend:{}}),d=()=>{e.loading=!0;let r=o;return m.exports.isFunction(g)&&(r=g(o)),t({pageNo:e.page,pageSize:e.size,...r}).then(a=>(e.count=a==null?void 0:a.count,e.lists=a==null?void 0:a.lists,e.extend=a==null?void 0:a.extend,m.exports.isFunction(n)&&n(a),Promise.resolve(a))).catch(a=>Promise.reject(a)).finally(()=>{e.loading=!1})};return{pager:e,getLists:d,resetParams:()=>{Object.keys(p).forEach(r=>{o[r]=p[r]}),d()},resetPage:()=>{e.page=1,d()}}}export{E as _,F as u};