UNPKG

goldpankit

Version:

GoldPanKit是一款极速研发套件,可在套件中快速构建各类技术框架和项目。开源作者可发布自己的项目,并为其设定金额,实现开源项目的盈利。

2 lines (1 loc) 3.59 kB
import{_ as y,r as a,o as d,h as k,w as i,b as s,p as g,l as b,a as l,m as V,s as S,a0 as _,c as h,t as A,j as w,e as v}from"./index-18d82337.js";const x={name:"AvatarUploader",props:{modelValue:{required:!0}},methods:{handleAvatarSuccess(e){if(!e.success){this.$tip.apiFailed(e);return}this.$emit("update:modelValue",e.data.fileKey),this.$emit("uploaded",e.data.fileKey)},beforeAvatarUpload(e){return e.size/1024/1024>2?(this.$tip.error("Avatar picture size can not exceed 2MB!"),!1):!0}}},B=e=>(g("data-v-79db4506"),e=e(),b(),e),N=B(()=>l("div",{class:"tip-wrap"},[l("span",null,"修改头像")],-1));function $(e,o,u,U,t,r){const p=a("Avatar"),c=a("el-upload");return d(),k(c,{class:"avatar-uploader",action:"/remote-api/upload/image","show-file-list":!1,accept:".jpeg,.png,.jpg,.gif","on-success":r.handleAvatarSuccess,"before-upload":r.beforeAvatarUpload},{default:i(()=>[s(p,{"file-key":u.modelValue},null,8,["file-key"]),N]),_:1},8,["on-success","before-upload"])}const C=y(x,[["render",$],["__scopeId","data-v-79db4506"]]);const D={components:{AvatarUploader:C},data(){return{copyUserInfo:null,isWorking:!1,rules:{nickname:[{required:!0,message:"请输入昵称",trigger:"blur"}]}}},computed:{...V(["userInfo"]),disabledSaveButton(){return this.isWorking||this.copyUserInfo.nickname.trim()===""?!0:JSON.stringify(this.copyUserInfo)===JSON.stringify(this.userInfo)}},watch:{userInfo:{immediate:!0,handler:function(){this.copyUserInfo=JSON.parse(JSON.stringify(this.userInfo))}}},methods:{...S(["setUserInfo"]),saveAvatar(e){_({avatar:e}).then(()=>{this.setUserInfo(this.copyUserInfo),this.$tip.apiSuccess("头像修改成功")}).catch(o=>{this.$tip.apiFailed(o)})},save(){this.disabledSaveButton||this.$refs.form.validate(e=>{e&&(this.isWorking=!0,this.copyUserInfo.nickname=this.copyUserInfo.nickname.trim(),this.copyUserInfo.introduce=this.copyUserInfo.introduce==null?null:this.copyUserInfo.introduce.trim(),_({nickname:this.copyUserInfo.nickname,introduce:this.copyUserInfo.introduce}).then(()=>{this.setUserInfo(this.copyUserInfo),this.$router.push({name:"Desktop"})}).catch(o=>{this.$tip.apiFailed(o)}).finally(()=>{this.isWorking=!1}))})}}},J={class:"page"},O={key:0,class:"wrap"},W={class:"avatar-wrap"},j={class:"opera"};function q(e,o,u,U,t,r){const p=a("AvatarUploader"),c=a("el-input"),f=a("el-form-item"),I=a("el-form"),m=a("el-button");return d(),h("div",J,[t.copyUserInfo!=null?(d(),h("div",O,[l("div",W,[s(p,{modelValue:t.copyUserInfo.avatar,"onUpdate:modelValue":o[0]||(o[0]=n=>t.copyUserInfo.avatar=n),onUploaded:r.saveAvatar},null,8,["modelValue","onUploaded"]),l("h2",null,A(e.getUserDisplayName(t.copyUserInfo)),1)]),s(I,{ref:"form",model:t.copyUserInfo,rules:t.rules},{default:i(()=>[s(f,{label:"昵称",prop:"nickname",required:""},{default:i(()=>[s(c,{modelValue:t.copyUserInfo.nickname,"onUpdate:modelValue":o[1]||(o[1]=n=>t.copyUserInfo.nickname=n),maxlength:"20"},null,8,["modelValue"])]),_:1}),s(f,{label:e.$t("common.introduce"),prop:"introduce"},{default:i(()=>[s(c,{modelValue:t.copyUserInfo.introduce,"onUpdate:modelValue":o[2]||(o[2]=n=>t.copyUserInfo.introduce=n),type:"textarea",rows:5,maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["model","rules"]),l("div",j,[s(m,{onClick:o[3]||(o[3]=n=>e.$router.push({name:"Desktop"})),icon:"Back"},{default:i(()=>[v("返回")]),_:1}),s(m,{type:"primary",disabled:r.disabledSaveButton,onClick:r.save},{default:i(()=>[v("保存资料")]),_:1},8,["disabled","onClick"])])])):w("",!0)])}const z=y(D,[["render",q],["__scopeId","data-v-27be7105"]]);export{z as default};