|
|
|
@ -14,7 +14,7 @@
@@ -14,7 +14,7 @@
|
|
|
|
|
<div class="user-modal-avatar"> |
|
|
|
|
<CropperAvatar |
|
|
|
|
:uploadApi="commonUpload" |
|
|
|
|
:value="state.avatar" |
|
|
|
|
:value="state.previewPath" |
|
|
|
|
btnText="更换头像" |
|
|
|
|
:btnProps="{ preIcon: 'ant-design:cloud-upload-outlined' }" |
|
|
|
|
:width="250" |
|
|
|
@ -47,7 +47,8 @@
@@ -47,7 +47,8 @@
|
|
|
|
|
/** 类型规范统一声明定义区域 */ |
|
|
|
|
interface WindowState { |
|
|
|
|
tag: string; |
|
|
|
|
avatar: string; |
|
|
|
|
previewPath: string; |
|
|
|
|
relativePath: string; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
export default defineComponent({ |
|
|
|
@ -65,7 +66,8 @@
@@ -65,7 +66,8 @@
|
|
|
|
|
/** 通用变量统一声明区域 */ |
|
|
|
|
const state = reactive<WindowState>({ |
|
|
|
|
tag: '', |
|
|
|
|
avatar: '' |
|
|
|
|
previewPath: '', |
|
|
|
|
relativePath: '' |
|
|
|
|
}); |
|
|
|
|
const [registerForm, { resetFields, setFieldsValue, updateSchema, validate, clearValidate }] = useForm({ |
|
|
|
|
labelWidth: 100, |
|
|
|
@ -78,7 +80,8 @@
@@ -78,7 +80,8 @@
|
|
|
|
|
await resetFields(); |
|
|
|
|
await clearValidate(); |
|
|
|
|
// 处理设置数据 |
|
|
|
|
state.avatar = 'https://godolphinx.org/dolphin1024x1024.png'; |
|
|
|
|
state.previewPath = 'https://godolphinx.org/dolphin1024x1024.png'; |
|
|
|
|
state.relativePath = 'https://godolphinx.org/dolphin1024x1024.png'; |
|
|
|
|
state.tag = data._tag; |
|
|
|
|
const id = data.record?.id; |
|
|
|
|
const props: Partial<ModalProps> = {}; |
|
|
|
@ -117,7 +120,7 @@
@@ -117,7 +120,7 @@
|
|
|
|
|
props.title = '编辑用户'; |
|
|
|
|
const ssoUser = await getSsoUser(id); |
|
|
|
|
await setFieldsValue(ssoUser); |
|
|
|
|
ssoUser.avatar && (state.avatar = getOSSProxyUrl(ssoUser.avatar)); |
|
|
|
|
ssoUser.avatar && (state.previewPath = getOSSProxyUrl(ssoUser.avatar)); |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
// 尾部:设置处理后的最终配置数据 |
|
|
|
@ -130,7 +133,7 @@
@@ -130,7 +133,7 @@
|
|
|
|
|
// 提取验证数据 |
|
|
|
|
const formData = await validate(); |
|
|
|
|
// 设置图片路径 |
|
|
|
|
!isBase64image(state.avatar) && (formData.avatar = state.avatar); |
|
|
|
|
!isBase64image(state.relativePath) && (formData.avatar = state.relativePath); |
|
|
|
|
// 处理提交之前逻辑 |
|
|
|
|
setModalProps({ confirmLoading: true }); |
|
|
|
|
// 采用tag标签区分操作 |
|
|
|
@ -151,7 +154,7 @@
@@ -151,7 +154,7 @@
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
function handleAvatarChange({ src, data }) { |
|
|
|
|
state.avatar = data.availablePath; |
|
|
|
|
state.relativePath = data.availablePath; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return { |
|
|
|
|