1 |
- var j=(n,h,i)=>new Promise((x,y)=>{var N=s=>{try{d(i.next(s))}catch(_){y(_)}},w=s=>{try{d(i.throw(s))}catch(_){y(_)}},d=s=>s.done?x(s.value):Promise.resolve(s.value).then(N,w);d((i=i.apply(n,h)).next())});import{d as k,r as L,f as O,A as u,u as r,j as Q,n as U,p as X,bR as Y,e as c,bp as Z,_ as q,ax as tt,aW as et,y as M,o as rt,c as it,w as b,b as R,a as S,t as z,__tla as at}from"./index-b5895273.js";import{P as st,__tla as lt}from"./index-3705f1a8.js";import{__tla as nt}from"./onMountedOrActivated-6125a24a.js";import{__tla as ot}from"./useWindowSizeFn-a59bee15.js";import{__tla as ct}from"./useContentViewHeight-cd147d02.js";let B,mt=Promise.all([(()=>{try{return at}catch(n){}})(),(()=>{try{return lt}catch(n){}})(),(()=>{try{return nt}catch(n){}})(),(()=>{try{return ot}catch(n){}})(),(()=>{try{return ct}catch(n){}})()]).then(()=>j(void 0,null,function*(){const n={height:[Number,String],maxHeight:[Number,String],maxWidth:[Number,String],minHeight:[Number,String],minWidth:[Number,String],width:[Number,String],bench:{type:[Number,String],default:0},itemHeight:{type:[Number,String],required:!0},items:{type:Array,default:()=>[]}},h="virtual-scroll";function i(t,o="px"){if(!(t==null||t===""))return isNaN(+t)?String(t):`${Number(t)}${o}`}const x=k({name:"VirtualScroll",props:n,setup(t,{slots:o}){const p=L(null),l=O({first:0,last:0,scrollTop:0}),W=u(()=>parseInt(t.bench,10)),f=u(()=>parseInt(t.itemHeight,10)),g=u(()=>Math.max(0,l.first-r(W))),H=u(()=>Math.min((t.items||[]).length,l.last+r(W))),I=u(()=>({height:i((t.items||[]).length*r(f))})),v=u(()=>{const e={},a=i(t.height),m=i(t.minHeight),$=i(t.minWidth),V=i(t.maxHeight),A=i(t.maxWidth),D=i(t.width);return a&&(e.height=a),m&&(e.minHeight=m),$&&(e.minWidth=$),V&&(e.maxHeight=V),A&&(e.maxWidth=A),D&&(e.width=D),e});Q([()=>t.itemHeight,()=>t.height],()=>{T()});function P(e){const a=r(p);if(!a)return 0;const m=parseInt(t.height||0,10)||a.clientHeight;return e+Math.ceil(m/r(f))}function G(){return Math.floor(l.scrollTop/r(f))}function T(){const e=r(p);e&&(l.scrollTop=e.scrollTop,l.first=G(),l.last=P(l.first))}function J(){const{items:e=[]}=t;return e.slice(r(g),r(H)).map(K)}function K(e,a){a+=r(g);const m=i(a*r(f));return c("div",{class:`${h}__item`,style:{top:m},key:a},[Z(o,"default",{index:a,item:e})])}return U(()=>{l.last=P(0),X(()=>{const e=r(p);e&&Y({el:e,name:"scroll",listener:T,wait:0})})}),()=>c("div",{class:h,style:r(v),ref:p},[c("div",{class:`${h}__container`,style:r(I)},[J()])])}}),y=q(x,[["__scopeId","data-v-745f3fb0"]]),N=tt(y),w=(()=>{const t=[];for(let o=1;o<2e4;o++)t.push({title:"\u5217\u8868\u9879"+o});return t})(),d=k({components:{VScroll:N,Divider:et,PageWrapper:st},setup(){return{data:w}}}),s={class:"virtual-scroll-demo-wrap"},_={class:"virtual-scroll-demo__item"},C={class:"virtual-scroll-demo-wrap"},E={class:"virtual-scroll-demo__item"};function F(t,o,p,l,W,f){const g=M("Divider"),H=M("VScroll"),I=M("PageWrapper");return rt(),it(I,{class:"virtual-scroll-demo"},{default:b(()=>[c(g,null,{default:b(()=>[R("\u57FA\u7840\u6EDA\u52A8\u793A\u4F8B")]),_:1}),S("div",s,[c(H,{itemHeight:41,items:t.data,height:300,width:300},{default:b(({item:v})=>[S("div",_,z(v.title),1)]),_:1},8,["items"])]),c(g,null,{default:b(()=>[R("\u5373\u4F7F\u4E0D\u53EF\u89C1\uFF0C\u4E5F\u9884\u5148\u52A0\u8F7D50\u6761\u6570\u636E\uFF0C\u9632\u6B62\u7A7A\u767D")]),_:1}),S("div",C,[c(H,{itemHeight:41,items:t.data,height:300,width:300,bench:50},{default:b(({item:v})=>[S("div",E,z(v.title),1)]),_:1},8,["items"])])]),_:1})}B=q(d,[["render",F],["__scopeId","data-v-7316c0b2"]])}));export{mt as __tla,B as default};
|