index.5f478ee5.js 3.2 KB

1
  1. import{W as j}from"./vue-cropper.es.e057450f.js";import{P as q,Q as D}from"./index.18ea3f49.js";import{_ as E}from"./_plugin-vue_export-helper.c27b6911.js";import{c as H,r as m,e as A,Q as F,a7 as s,h as x,i as G,M as t,G as l,E as O,u as J,J as Q,K as C,n as z,aq as K,ar as M,j as X}from"./vue.fb807239.js";import"./elementPlus.fdc894a5.js";import"./echarts.594b4072.js";const Y=i=>(K("data-v-390f61c0"),i=i(),M(),i),Z=Y(()=>X("br",null,null,-1)),ee={__name:"index",props:{modelValue:{type:Boolean,default:!1,required:!0}},emits:["uploadImg"],setup(i,{expose:y,emit:w}){const _=q(),{proxy:d}=H();m(!1);const g=m(!1),I=m("修改头像"),v=w,R=i,f=A({get(){return R.modelValue},set(o){v("update:modelValue",o)}}),a=F({img:_.userInfos.avatar,fileName:"",autoCrop:!0,autoCropWidth:200,autoCropHeight:200,fixedBox:!0,outputType:"png"});function V(){f.value=!0}function b(){z(()=>{g.value=!0})}function B(){}function T(){d.$refs.cropper.rotateLeft()}function k(){d.$refs.cropper.rotateRight()}function N(o){if(o.type.indexOf("image/")==-1)d.$modal.msgError("文件格式错误,请上传图片类型,如:JPG,PNG后缀的文件。");else{const e=new FileReader;e.readAsDataURL(o),e.onload=()=>{a.img=e.result,a.fileName=o.name}}}function $(){d.$refs.cropper.getCropData(o=>{let e=new Image;e.src=o,e.onload=async()=>{let r=U(e);const n=D(r,a.fileName);v("uploadImg",n)}})}function U(o){let e=document.createElement("canvas"),r=e.getContext("2d"),n=o.width,u=o.height;return e.width=n,e.height=u,r.fillStyle="#fff",r.fillRect(0,0,e.width,e.height),r.drawImage(o,0,0,n,u),e.toDataURL("image/jpeg",.8)}function L(){a.visible=!1,a.img=_.userInfos.avatar}return y({updateAvatar:o=>{a.img=o}}),(o,e)=>{const r=s("el-avatar"),n=s("el-col"),u=s("el-row"),h=s("Plus"),P=s("el-icon"),c=s("el-button"),S=s("el-upload"),W=s("el-dialog");return x(),G("div",{class:"user-info-head",onClick:e[4]||(e[4]=p=>V())},[t(r,{size:100,src:a.img},null,8,["src"]),t(W,{title:I.value,modelValue:f.value,"onUpdate:modelValue":e[3]||(e[3]=p=>f.value=p),width:"600px","append-to-body":"",onOpened:b,onClose:L},{default:l(()=>[t(u,null,{default:l(()=>[t(n,{class:"flex justify-center"},{default:l(()=>[g.value?(x(),O(J(j),{key:0,ref:"cropper",img:a.img,info:!0,autoCrop:a.autoCrop,autoCropWidth:a.autoCropWidth,autoCropHeight:a.autoCropHeight,fixedBox:a.fixedBox,outputType:a.outputType,onRealTime:o.realTime,centerBox:!0,class:"cropper"},null,8,["img","autoCrop","autoCropWidth","autoCropHeight","fixedBox","outputType","onRealTime"])):Q("",!0)]),_:1})]),_:1}),Z,t(u,{class:"flex justify-center"},{default:l(()=>[t(n,{lg:2,md:2},{default:l(()=>[t(S,{action:"#","http-request":B,"show-file-list":!1,"before-upload":N},{default:l(()=>[t(c,{type:"success"},{default:l(()=>[C(" 选择 "),t(P,{class:"el-icon--right"},{default:l(()=>[t(h)]),_:1})]),_:1})]),_:1})]),_:1}),t(n,{lg:{span:1,offset:2},md:2},{default:l(()=>[t(c,{icon:"RefreshLeft",onClick:e[0]||(e[0]=p=>T())})]),_:1}),t(n,{lg:{span:1,offset:2},md:2},{default:l(()=>[t(c,{icon:"RefreshRight",onClick:e[1]||(e[1]=p=>k())})]),_:1}),t(n,{lg:{span:2,offset:2},md:2},{default:l(()=>[t(c,{type:"primary",onClick:e[2]||(e[2]=p=>$())},{default:l(()=>[C("更新头像")]),_:1})]),_:1})]),_:1})]),_:1},8,["title","modelValue"])])}}},ie=E(ee,[["__scopeId","data-v-390f61c0"]]);export{ie as default};