1 |
- /* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{h as e}from"./http-81caf32c.js";import{d as a,m as t,Q as i,o as l,c as s,f as o,F as p,z as c,A as n,l as d,aN as r,w as u,e as m,t as f,a as h,b0 as y,ap as k,a5 as w,b1 as v,L as g,b2 as b,v as x,b3 as _,b4 as L,b5 as T,b6 as z,av as j,aw as C,H as S,_ as M}from"./index-31fd0fad.js";const B={class:"upload_wrap"},D={key:0},F={key:0,class:"el-upload-list el-upload-list--picture-card"},U={key:0,class:"el-upload-list__item-actions el-upload-list__item-delete"},N={key:1,class:"template_list"},R={class:"documentName"},$={key:0},A={key:1,style:{paddingleft:"5px"}},I={key:0,class:"el-upload__text"},V=(e=>(j("data-v-e027c22f"),e=e(),C(),e))((()=>m("span",null,"上传文件",-1))),P={key:1},q={class:"el-upload__tip"},E={key:0},H={key:1},O=["src"],Q=M(a({__name:"myUpload",props:{acceptType:{default:".jpeg,.png"},isMultiple:{type:Boolean,default:!1},isCheckName:{type:Boolean,default:!1},limitNum:{default:10},isDisableUpload:{type:Boolean,default:!1},maxFileSize:{default:1},widthLimit:{default:690},heightLimit:{default:280},isLimitSize:{type:Boolean,default:!0},isShowTips:{type:Boolean,default:!0},action:{default:"/qiniu/upload/image"},formType:{default:"photo"},fileList:{default:[]},isDownLoad:{type:Boolean,default:!1},isCheckMM:{type:Boolean,default:!1},listType:{default:"picture-card"}},emits:["fileSuccess","fileRemove"],setup(a,{emit:j}){const C=a;let M=t([]);M.value=C.fileList;const Q=t(""),G=t(!1),J=(e,a)=>{};i((()=>C.fileList),(()=>{C.fileList,M.value=C.fileList}));const K=async(a,t)=>{if(C.isCheckMM){if(!(await W(a)))return}if(!/^[0-9]+_/.test(a.name)&&C.isCheckName)return w.error("文件上传格式错误"),!1;const i=a.raw,l=C.acceptType.split(",");let s=l.map((e=>X(e)));i.type;const o=s.filter((e=>i.type.indexOf(e)>-1)),p=C.acceptType;if(o.length<1)return w.error(`仅支持格式为${p}的图片`),!1;if(i.size/1024/1024>C.maxFileSize&&C.isLimitSize){w.error(`文件大小不能超过${C.maxFileSize}MB!`);const e=[...M.value];return M.value=e.filter((e=>e.uid!=i.uid)),!1}{let t=new FormData;t.append(C.formType,i);const l=v.service({text:"正在上传",background:"rgba(0,0,0,.2)"}),s=C.action;e.post(s,t).then((async e=>{1e4==e.code?(l.close(),M.value.push({uid:a.uid,url:e.data}),j("fileSuccess",e.data)):(l.close(),w.warning("文件上传失败"))})).catch((()=>{l.close()}))}return!0},W=e=>new Promise((function(a,t){const i=new FileReader;i.onload=e=>{const i=new Image;i.onload=()=>{const{width:e,height:l,size:s}=i;e!==C.widthLimit||l!==C.heightLimit?t(i):a(i)},i.onerror=e=>{t(`图片加载错误:${e}`)},i.src=e.target.result},i.onerror=e=>{t(`文件读取错误:${e}`)},i.readAsDataURL(e.raw)})).then((e=>!0),(e=>(C.widthLimit,w.error({message:"上传文件的图片大小不合符标准,宽需要为"+C.widthLimit+"px,高需要为"+C.heightLimit+"px。当前上传图片的宽高分别为:"+e.width+"px和"+e.height+"px"}),!1))),X=e=>{let a="";switch(e){case".xls":a="excel";break;case".doc":a="word";break;case".pdf":a="pdf";break;case".zip":a="zip";break;case".xlsx":a="sheet";break;case".pptx":a="presentation";break;case".docx":a="document";break;case".text":a="text";break;case".jpeg":a="jpeg";break;case".png":a="png";break;case".gif":a="gif";break;case".mp4":a="mp4";break;case".mp3":a="mp3"}return a},Y=e=>{const a=[...M.value];M.value=a.filter((a=>a.uid!=e.uid)),M.value,j("fileRemove",e)};return(e,t)=>{const i=S,w=g,v=b,j=x;return l(),s("div",B,[o(M).length>0?(l(),s("div",D,["picture-card"==a.listType||"picture"==a.listType?(l(),s("div",F,[(l(!0),s(p,null,c(o(M),((e,a)=>(l(),s("div",{class:"el-upload-list__item is-success",style:{width:"fit-content",height:"fit-content"},key:a},[h(i,{style:{width:"fit-content",height:"148px","min-width":"148px"},src:e.url,fit:"cover",lazy:!0},null,8,["src"]),C.isDisableUpload?n("",!0):(l(),s("div",U,[h(w,{class:"cursor-pointer",onClick:a=>Y(e)},{default:u((()=>[h(o(_))])),_:2},1032,["onClick"])]))])))),128))])):n("",!0),"text"==a.listType?(l(),s("div",N,[(l(!0),s(p,null,c(o(M),((e,t)=>(l(),s("div",{class:"template",key:t},[m("span",null,[h(w,null,{default:u((()=>[h(o(L))])),_:1})]),m("span",R,f(e.name),1),C.isDisableUpload?n("",!0):(l(),s("span",$,[h(w,{color:"#000000a6",size:"16",onClick:a=>Y(e)},{default:u((()=>[h(o(T))])),_:2},1032,["onClick"])])),a.isDownLoad?(l(),s("span",A,[h(w,{onClick:a=>(e=>{const a=window.location.href.split("#")[0],t=a.slice(0,a.length-1);window.location.href=t+e.ossFile})(e)},{default:u((()=>[h(o(z))])),_:2},1032,["onClick"])])):n("",!0)])))),128))])):n("",!0)])):(l(),d(v,{key:1,class:"w-auto upload",ref:"uploadRef","file-list":o(M),multiple:C.isMultiple,limit:C.limitNum,"list-type":a.listType,accept:C.acceptType,"auto-upload":!1,"show-file-list":!1,disabled:C.isDisableUpload,"on-change":K,"on-remove":J},r({default:u((()=>["text"==a.listType?(l(),s("div",I,[h(w,null,{default:u((()=>[h(o(y))])),_:1}),V])):(l(),s("div",P,[h(w,null,{default:u((()=>[h(o(k))])),_:1})]))])),_:2},[!C.isDisableUpload&&a.isShowTips?{name:"tip",fn:u((()=>[m("div",q,[m("span",null,"支持"+f(a.acceptType.replaceAll(",","/"))+";",1),a.isLimitSize?(l(),s("span",E," 文件大小不能超过"+f(C.maxFileSize)+"M; ",1)):n("",!0),a.isCheckMM?(l(),s("span",H," 尺寸:"+f(C.widthLimit)+"*"+f(C.heightLimit)+"px ",1)):n("",!0)])])),key:"0"}:void 0]),1032,["file-list","multiple","limit","list-type","accept","disabled"])),h(j,{modelValue:G.value,"onUpdate:modelValue":t[0]||(t[0]=e=>G.value=e)},{default:u((()=>[m("img",{"w-full":"",src:Q.value,alt:"Preview Image"},null,8,O)])),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-e027c22f"]]);export{Q as _};
|