diff --git a/src/api/user.js b/src/api/user.js index 33dfc0b..547ceed 100644 --- a/src/api/user.js +++ b/src/api/user.js @@ -43,3 +43,8 @@ export const userModifyPassword = async (obj) => { await refreshToken() return request.post('/user/modifyPwd', getReqBody(obj)) } + +export const userUpdateAvatarService = async (avatar) => { + await refreshToken() + return request.post('/user/updateAvatar', getReqBody(avatar)) +} diff --git a/src/components/user/EditeAvatar.vue b/src/components/user/EditeAvatar.vue new file mode 100644 index 0000000..de51999 --- /dev/null +++ b/src/components/user/EditeAvatar.vue @@ -0,0 +1,154 @@ + + + + + diff --git a/src/views/layout/LayoutContainer.vue b/src/views/layout/LayoutContainer.vue index 23ed2cd..921a389 100644 --- a/src/views/layout/LayoutContainer.vue +++ b/src/views/layout/LayoutContainer.vue @@ -113,6 +113,10 @@ const onExit = async () => { margin-top: 20px; margin-bottom: 30px; cursor: pointer; + .el-avatar { + width: 40px; + height: 40px; + } } .el-menu { diff --git a/src/views/setting/SettingPersonal.vue b/src/views/setting/SettingPersonal.vue index 22ea423..54f15b2 100644 --- a/src/views/setting/SettingPersonal.vue +++ b/src/views/setting/SettingPersonal.vue @@ -6,11 +6,13 @@ import { userModifySelfService } from '@/api/user' import defaultImg from '@/assets/select_avatar.jpg' import { cloneDeep, isEqual } from 'lodash' import { maskPhoneNum } from '@/utils/common' +import EditeAvatar from '@/components/user/EditeAvatar.vue' const userData = userStore() // 准备表单数据 const formModel = ref({}) const isLoading = ref(false) +const isShowEditeAvatar = ref(false) onMounted(() => { formModel.value = cloneDeep(userData.user) @@ -50,9 +52,14 @@ const displayPhone = computed(() => { 图片加载错误 - + 点击修改头像 @@ -123,6 +130,8 @@ const displayPhone = computed(() => { + +