|
|
|
@ -1,13 +1,19 @@
|
|
|
|
|
<script setup>
|
|
|
|
|
import {ref} from "vue";
|
|
|
|
|
import {useAuth} from "@/store/auth/index.js";
|
|
|
|
|
import {uploadFile} from "@/api/auth/index.js";
|
|
|
|
|
const {clickApply,formData,genderOptions,clickAddWorks,removeWorks} =useAuth()
|
|
|
|
|
const showPicker=ref(false)
|
|
|
|
|
function onConfirm(data){
|
|
|
|
|
formData.value.gender=data.selectedValues?.[0]
|
|
|
|
|
showPicker.value=false
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const afterRead=(file)=>{
|
|
|
|
|
const formData = new FormData()
|
|
|
|
|
formData.append("file", file.file)
|
|
|
|
|
formData.append("type", 'image')
|
|
|
|
|
uploadFile(formData)
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
<template>
|
|
|
|
|
<div class="box-border relative w-1920px h-screen bg-no-repeat bg-cover bg-[url('@/assets/image/zu3237.png')] flex items-center flex-col">
|
|
|
|
@ -39,11 +45,12 @@ function onConfirm(data){
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="flex mt-77px flex-col items-center w-full pt-46px h-1382px bg-[#F5F5F5] w-1490px overflow-y-auto pr-44px pl-44px">
|
|
|
|
|
<div :class="`flex w-full ${formData.works?.length>1?'pb-102px border-b-1px border-b-[#D6E0E9] border-b-solid mb-97px':''}`" v-for="(item,index) of formData.works" :key="index">
|
|
|
|
|
|
|
|
|
|
<div :class="`flex w-full ${formData.works?.length>1&&index+1!==formData.works?.length?'border-b-1px border-b-[#D6E0E9] border-b-solid mb-97px pb-102px':''}` " v-for="(item,index) of formData.works" :key="index">
|
|
|
|
|
<div class="w-265px shrink-0 font-bold text-[#2B69A1]">*作品{{index+1}}</div>
|
|
|
|
|
<div>
|
|
|
|
|
<div class="flex items-end">
|
|
|
|
|
<van-uploader>
|
|
|
|
|
<van-uploader :after-read="afterRead">
|
|
|
|
|
<div class="w-410px h-410px bg-[#D6E0E9] rounded-20px flex flex-col items-center justify-center">
|
|
|
|
|
<img class="w-88px h-88px" src="@/assets/image/zu3264@2x.png" alt="">
|
|
|
|
|
<div class="mt-36px text-[#2B69A1] text-72px">上传作品</div>
|
|
|
|
|