You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2 lines
3.0 KiB

import{d as a,e,o as l,j as s,k as t,g as n,S as u,m as r,U as o,n as c,p as v,x as i,y as d,C as _,t as p,I as m,V as f,s as h,W as y,a as b,X as k,c as g,_ as V}from"./index-CPXWftEC.js";import{g as w,l as x,u as j,s as C}from"./localProfile.BD3FU5H8.js";const P=V(a({__name:"profile",setup(a){const V=e(!0),P=e(!1),T=e(!1),U=e({real_name:"",phone:"",avatar_url:""});function B(a){U.value.real_name=a.real_name||"",U.value.phone=a.phone||"",U.value.avatar_url=a.avatar_url||""}function F(){T.value?y({count:1,sizeType:["compressed"],sourceType:["album","camera"],success:async a=>{const e=a.tempFilePaths[0];if(e)try{b({title:"上传中"});const{url:a}=await k(e);U.value.avatar_url=a}catch(l){h({title:(null==l?void 0:l.message)||"上传失败",icon:"none"})}finally{g()}}}):h({title:"请先通过微信登录后再上传头像",icon:"none"})}async function I(){if(U.value.real_name.trim())if(/^1\d{10}$/.test(U.value.phone.trim())){P.value=!0;try{const a={real_name:U.value.real_name.trim(),phone:U.value.phone.trim(),avatar_url:U.value.avatar_url||void 0};T.value&&await j(a),C({real_name:a.real_name,phone:a.phone,avatar_url:a.avatar_url}),h({title:"保存成功",icon:"success"})}catch(a){h({title:(null==a?void 0:a.message)||"保存失败",icon:"none"})}finally{P.value=!1}}else h({title:"请填写11位手机号",icon:"none"});else h({title:"请填写姓名",icon:"none"})}return l(()=>{!async function(){V.value=!0,T.value=!!n(u.accessToken);try{if(T.value)try{const a=await w();U.value.real_name=a.real_name||"",U.value.phone=a.phone||"",U.value.avatar_url=a.avatar_url||""}catch{const a=x();a&&B(a)}else{const a=x();a&&B(a)}}finally{V.value=!1}}()}),(a,e)=>{const l=o("SubPageBackBtn"),n=r,u=d,h=p,y=m,b=f;return c(),s(n,{class:"page"},{default:t(()=>[v(l),V.value?(c(),s(n,{key:0,class:"loading"},{default:t(()=>[i("加载中…")]),_:1})):(c(),s(n,{key:1,class:"content"},{default:t(()=>[v(n,{class:"avatar-block"},{default:t(()=>[v(n,{class:"avatar-wrap",onClick:F},{default:t(()=>[U.value.avatar_url?(c(),s(u,{key:0,class:"avatar",src:U.value.avatar_url,mode:"aspectFill"},null,8,["src"])):(c(),s(n,{key:1,class:"avatar placeholder"})),v(n,{class:"avatar-tip"},{default:t(()=>[i(_(T.value?"点击更换头像":"登录后可上传头像"),1)]),_:1})]),_:1})]),_:1}),v(n,{class:"card"},{default:t(()=>[v(n,{class:"row"},{default:t(()=>[v(h,{class:"label"},{default:t(()=>[i("姓名")]),_:1}),v(y,{modelValue:U.value.real_name,"onUpdate:modelValue":e[0]||(e[0]=a=>U.value.real_name=a),class:"input",placeholder:"必填","placeholder-class":"ph"},null,8,["modelValue"])]),_:1}),v(n,{class:"row last"},{default:t(()=>[v(h,{class:"label"},{default:t(()=>[i("手机号")]),_:1}),v(y,{modelValue:U.value.phone,"onUpdate:modelValue":e[1]||(e[1]=a=>U.value.phone=a),class:"input",type:"number",maxlength:"11",placeholder:"必填","placeholder-class":"ph"},null,8,["modelValue"])]),_:1})]),_:1}),v(b,{class:"btn",disabled:P.value,onClick:I},{default:t(()=>[i(_(P.value?"保存中…":"保存"),1)]),_:1},8,["disabled"])]),_:1}))]),_:1})}}}),[["__scopeId","data-v-f84b8690"]]);export{P as default};