|
@@ -1,91 +0,0 @@
|
|
|
-<template>
|
|
|
- <div>
|
|
|
- <div>
|
|
|
- {{ nickName }}
|
|
|
- <el-button link icon="Edit" @click="getDialog" />
|
|
|
- </div>
|
|
|
- <el-dialog v-model="dialogVisible" title="编辑" width="500" :before-close="close">
|
|
|
- <el-form ref="userRef" :model="dialogForm" :rules="rules" label-width="80px">
|
|
|
- <el-form-item label="用户昵称" prop="nickName">
|
|
|
- <el-input v-model="dialogForm.nickName" maxlength="30" />
|
|
|
- </el-form-item>
|
|
|
- <!-- <el-form-item label="手机号码" prop="phonenumber">
|
|
|
- <el-input v-model="form.phonenumber" maxlength="11" />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="邮箱" prop="email">
|
|
|
- <el-input v-model="form.email" maxlength="50" />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="性别">
|
|
|
- <el-radio-group v-model="form.sex">
|
|
|
- <el-radio label="0">男</el-radio>
|
|
|
- <el-radio label="1">女</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- </el-form-item> -->
|
|
|
- </el-form>
|
|
|
- <template #footer>
|
|
|
- <el-button type="primary" @click="submit">确定</el-button>
|
|
|
- <el-button @click="close">取消</el-button>
|
|
|
- </template>
|
|
|
- </el-dialog>
|
|
|
- </div>
|
|
|
-</template>
|
|
|
-
|
|
|
-<script setup>
|
|
|
-import { updateUserProfile } from "@/api/system/user";
|
|
|
-
|
|
|
-const props = defineProps({
|
|
|
- user: {
|
|
|
- type: Object
|
|
|
- }
|
|
|
-});
|
|
|
-
|
|
|
-const { proxy } = getCurrentInstance();
|
|
|
-
|
|
|
-const rules = ref({
|
|
|
- nickName: [{ required: true, message: "用户昵称不能为空", trigger: "blur" }],
|
|
|
- email: [{ required: true, message: "邮箱地址不能为空", trigger: "blur" }, { type: "email", message: "请输入正确的邮箱地址", trigger: ["blur", "change"] }],
|
|
|
- phonenumber: [{ required: true, message: "手机号码不能为空", trigger: "blur" }, { pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, message: "请输入正确的手机号码", trigger: "blur" }],
|
|
|
-});
|
|
|
-
|
|
|
-// 弹窗
|
|
|
-const nickName = ref("")
|
|
|
-const dialogForm = ref({})
|
|
|
-const dialogVisible = ref(false)
|
|
|
-function getDialog() {
|
|
|
- dialogVisible.value = true
|
|
|
- getWatch()
|
|
|
-}
|
|
|
-
|
|
|
-/** 提交按钮 */
|
|
|
-function submit() {
|
|
|
- proxy.$refs.userRef.validate(valid => {
|
|
|
- if (valid) {
|
|
|
- updateUserProfile(dialogForm.value).then(response => {
|
|
|
- proxy.$modal.msgSuccess("修改成功");
|
|
|
- props.user.phonenumber = dialogForm.value.phonenumber;
|
|
|
- props.user.email = dialogForm.value.email;
|
|
|
- close()
|
|
|
- getWatch()
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
-};
|
|
|
-
|
|
|
-/** 关闭按钮 */
|
|
|
-function close() {
|
|
|
- dialogVisible.value = false
|
|
|
- proxy.$refs.userRef.resetFields()
|
|
|
-};
|
|
|
-
|
|
|
-// 回显当前登录用户信息
|
|
|
-function getWatch() {
|
|
|
- watch(() => props.user, user => {
|
|
|
- console.log(user);
|
|
|
- if (user) {
|
|
|
- nickName.value = user.nickName
|
|
|
- dialogForm.value = { nickName: user.nickName, phonenumber: user.phonenumber, email: user.email, sex: user.sex }
|
|
|
- }
|
|
|
- }, { immediate: true });
|
|
|
-}
|
|
|
-getWatch()
|
|
|
-</script>
|