UNPKG

epic-designer

Version:

基于vue3的设计器,可视化开发页面表单

2 lines (1 loc) 1.35 kB
"use strict";const l=require("vue");;/* empty css */require("vuedraggable");const i=require("../../../utils/src/common/string.cjs");require("@vueuse/core");require("../../../hooks/src/store/index.cjs");const n=require("element-plus"),q=l.defineComponent({emits:["update:modelValue","change"],props:{modelValue:{default:"",type:String}},setup(c,{attrs:p,emit:s}){const r=l.ref([]);let u="";l.watch(()=>r.value,e=>{console.log("list",e),u=e.filter(t=>t.status==="success").map(t=>t.url).join(","),s("update:modelValue",u),s("change",u)}),l.watch(()=>c.modelValue,e=>{if(u!==e){if(e===""){r.value=[];return}e!==null&&r.value!==null&&(r.value=e.split(",").map(t=>({id:i.getUUID(),name:i.getFileNameByUrl(t),status:"success",url:t})))}},{immediate:!0});const d=()=>{},g=()=>{},h=(e,t,v)=>{r.value=v.map(o=>{var a;return{...o,url:(a=o.response.data)==null?void 0:a.url}})},f=e=>{n.ElMessage.error("上传失败"),console.error(e)},m=l.computed(()=>({...p,onBeforeUpload:g,onChange:d,onError:f,onSuccess:h,"file-list":r.value}));return()=>l.h("div",null,{default:()=>[l.h(n.ElUpload,m.value,{default:()=>[l.h(n.ElButton,{},{default:()=>[l.h("span",{class:"icon--epic icon--epic--cloud-upload-outlined text-lg",style:{"margin-right":"2px"}}),l.h("span",null,{default:()=>"上传文件"})]})]})]})}});module.exports=q;