2 lines
6.5 KiB
JavaScript
2 lines
6.5 KiB
JavaScript
import{G as t,P as e,r as a,a as l,o as s,c as i,w as r,h as n,b as u,s as o,e as d,f as c,x as h,l as f,t as p,F as m,k as b,U as y,d as g,z as x,V as v,aa as _,W as S,R as w,aZ as I,i as k}from"./index.28d89b6b.js";import{_ as B}from"./u-badge.313e5461.js";import{_ as $}from"./plugin-vue_export-helper.21dcd24c.js";import{_ as T}from"./z-paging.c35b85e2.js";import{r as C}from"./recharge.ce883c99.js";var j=$({name:"u-tabs",emits:["update:modelValue","input","change"],props:{value:{type:[Number,String],default:0},modelValue:{type:[Number,String],default:0},current:{type:[Number,String],default:0},isScroll:{type:Boolean,default:!0},list:{type:Array,default:()=>[]},height:{type:[String,Number],default:80},fontSize:{type:[String,Number],default:30},duration:{type:[String,Number],default:.5},activeColor:{type:String,default:"#2979ff"},inactiveColor:{type:String,default:"#303133"},barWidth:{type:[String,Number],default:40},barHeight:{type:[String,Number],default:6},gutter:{type:[String,Number],default:30},bgColor:{type:String,default:"#ffffff"},name:{type:String,default:"name"},count:{type:String,default:"count"},offset:{type:Array,default:()=>[5,20]},bold:{type:Boolean,default:!0},activeItemStyle:{type:Object,default:()=>({})},showBar:{type:Boolean,default:!0},barStyle:{type:Object,default:()=>({})},itemWidth:{type:[Number,String],default:"auto"}},data(){return{scrollLeft:0,tabQueryInfo:[],componentWidth:0,scrollBarLeft:0,parentLeft:0,id:this.$u.guid(),currentIndex:this.current,barFirstTimeMove:!0}},watch:{list:{immediate:!0,handler(t,e){e&&t.length!==e.length&&(this.currentIndex=0),setTimeout((()=>{this.init()}),200)}},current:{immediate:!0,handler(t,e){this.$nextTick((()=>{this.currentIndex=t,this.scrollByIndex()}))}},valueCom:{immediate:!0,handler(t,e){this.$nextTick((()=>{this.currentIndex=t,this.scrollByIndex()}))}}},computed:{valueCom(){return this.modelValue},tabBarStyle(){let t={width:this.barWidth+"rpx",transform:`translate(${this.scrollBarLeft}px, -100%)`,"transition-duration":`${this.barFirstTimeMove?0:this.duration}s`,"background-color":this.activeColor,height:this.barHeight+"rpx","border-radius":this.barHeight/2+"px"};return Object.assign(t,this.barStyle),t},tabItemStyle(){return t=>{let e={height:this.height+"rpx","line-height":this.height+"rpx","font-size":this.fontSize+"rpx","transition-duration":`${this.duration}s`,padding:this.isScroll?`0 ${this.gutter}rpx`:"",flex:this.isScroll?"auto":"1",width:this.$u.addUnit(this.itemWidth)};return t==this.currentIndex&&this.bold&&(e.fontWeight="bold"),t==this.currentIndex?(e.color=this.activeColor,e=Object.assign(e,this.activeItemStyle)):e.color=this.inactiveColor,e}}},methods:{async init(){let t=await this.$uGetRect("#"+this.id);this.parentLeft=t.left,this.componentWidth=t.width,this.getTabRect()},clickTab(t){t!=this.currentIndex&&(this.$emit("change",t),this.$emit("input",t),this.$emit("update:modelValue",t))},getTabRect(){let e=t().in(this);for(let t=0;t<this.list.length;t++)e.select(`#u-tab-item-${t}`).fields({id:!0,size:!0,rect:!0});e.exec(function(t){this.tabQueryInfo=t,this.scrollByIndex()}.bind(this))},scrollByIndex(){let t=this.tabQueryInfo[this.currentIndex];if(!t)return;let a=t.width,l=t.left-this.parentLeft-(this.componentWidth-a)/2;this.scrollLeft=l<0?0:l;let s=t.left+t.width/2-this.parentLeft;this.scrollBarLeft=s-e(this.barWidth)/2,1==this.barFirstTimeMove&&setTimeout((()=>{this.barFirstTimeMove=!1}),100)}},mounted(){this.init()}},[["render",function(t,e,g,x,v,_){const S=a(l("u-badge"),B),w=b,I=y;return s(),i(w,{class:"u-tabs",style:h({background:g.bgColor})},{default:r((()=>[n(" $u.getRect()对组件根节点无效,因为写了.in(this),故这里获取内层接点尺寸 "),u(w,{id:v.id},{default:r((()=>[u(I,{"scroll-x":"",class:"u-scroll-view","scroll-left":v.scrollLeft,"scroll-with-animation":""},{default:r((()=>[u(w,{class:o(["u-scroll-box",{"u-tabs-scorll-flex":!g.isScroll}])},{default:r((()=>[(s(!0),d(m,null,c(g.list,((t,e)=>(s(),i(w,{class:"u-tab-item u-line-1",id:"u-tab-item-"+e,key:e,onClick:t=>_.clickTab(e),style:h([_.tabItemStyle(e)])},{default:r((()=>[u(S,{count:t[g.count]||t.count||0,offset:g.offset,size:"mini"},null,8,["count","offset"]),f(" "+p(t[g.name]||t.name),1)])),_:2},1032,["id","onClick","style"])))),128)),g.showBar?(s(),i(w,{key:0,class:"u-tab-bar",style:h([_.tabBarStyle])},null,8,["style"])):n("v-if",!0)])),_:1},8,["class"])])),_:1},8,["scroll-left"])])),_:1},8,["id"])])),_:1},8,["style"])}],["__scopeId","data-v-41960a88"]]);const V=g({__name:"user_wallet",setup(t){const e=x([{name:"全部",type:0},{name:"收入",type:1},{name:"支出",type:2}]),h=v(),y=x([]),g=x(0),B=t=>{g.value=t,h.value.reload()},$=async(t,a,l)=>{try{console.log(l);const s=e.value[g.value].type,i=await I({type:s,page_no:t,page_size:a});h.value.complete(i.lists)}catch(s){h.value.complete(!1)}},V=x({}),L=async()=>{V.value=await C()};return _((()=>{L()})),S((()=>{w((()=>{var t;null==(t=h.value)||t.reload()}))})),(t,x)=>{const v=b,_=k,S=a(l("u-tabs"),j),w=a(l("z-paging"),T);return s(),i(w,{ref_key:"paging",ref:h,modelValue:y.value,"onUpdate:modelValue":x[1]||(x[1]=t=>y.value=t),onQuery:$,auto:!1,onOnRefresh:x[2]||(x[2]=t=>L()),"show-loading-more-when-reload":!0},{default:r((()=>[u(v,{class:"user-wallet"},{default:r((()=>[u(v,{class:"p-[20rpx]"},{default:r((()=>[u(v,{class:"bg-primary rounded-[14rpx] flex items-center justify-between pl-[44rpx] py-[54rpx] text-white"},{default:r((()=>[u(v,null,{default:r((()=>[u(v,{class:"text-sm"},{default:r((()=>[f("钱包余额")])),_:1}),u(v,{class:"text-[60rpx]"},{default:r((()=>[f(p(V.value.userMoney),1)])),_:1})])),_:1}),V.value.openRecharge?(s(),i(_,{key:0,url:"/packages/pages/recharge/recharge","hover-class":"none"},{default:r((()=>[u(v,{class:"text-primary px-[30rpx] py-[15rpx] bg-white rounded-l-full"},{default:r((()=>[f(" 去充值 ")])),_:1})])),_:1})):n("v-if",!0)])),_:1})])),_:1}),u(S,{list:e.value,"is-scroll":!1,modelValue:g.value,"onUpdate:modelValue":x[0]||(x[0]=t=>g.value=t),onChange:B},null,8,["list","modelValue"]),u(v,{class:"pt-2.5"},{default:r((()=>[(s(!0),d(m,null,c(y.value,(t=>(s(),i(v,{key:t.id,class:"bg-white border-solid border-b border-0 border-light px-[26rpx] py-[24rpx]"},{default:r((()=>[u(v,{class:"flex justify-between"},{default:r((()=>[u(v,{class:"mr-2"},{default:r((()=>[f(p(t.tips),1)])),_:2},1024),u(v,{class:o(["text-lg",{"text-primary":1==t.action}])},{default:r((()=>[f(p(t.orderAmount),1)])),_:2},1032,["class"])])),_:2},1024),u(v,{class:"text-sm text-muted mr-1"},{default:r((()=>[f(p(t.createTime),1)])),_:2},1024)])),_:2},1024)))),128))])),_:1})])),_:1})])),_:1},8,["modelValue"])}}});export{V as default};
|