From e2bdae5bf2a2acf562ac985c8607700912a9e3a3 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期六, 20 四月 2024 19:13:35 +0800 Subject: [PATCH] update element-plus 升级 2.7.1 并适配代码 --- src/views/system/user/profile/userInfo.vue | 90 ++++++++++++++++++++++++--------------------- 1 files changed, 48 insertions(+), 42 deletions(-) diff --git a/src/views/system/user/profile/userInfo.vue b/src/views/system/user/profile/userInfo.vue index 9cf7c0f..d5b8a4c 100644 --- a/src/views/system/user/profile/userInfo.vue +++ b/src/views/system/user/profile/userInfo.vue @@ -1,43 +1,3 @@ -<script setup lang="ts"> -import { updateUserProfile } from "@/api/system/user"; -import { FormRules } from "element-plus"; -import { ComponentInternalInstance } from "vue"; -import { PropType } from "vue"; -import { ElForm } from "element-plus"; - -const props = defineProps({ - user: { - type: Object as PropType<any>, - } -}); -const userForm = computed(() => props.user); - -const { proxy } = getCurrentInstance() as ComponentInternalInstance; - -const userRef = ref(ElForm); - -const rules = ref<FormRules>({ - 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 submit = () => { - userRef.value.validate(async (valid: boolean) => { - if (valid) { - await updateUserProfile(props.user) - proxy?.$modal.msgSuccess("淇敼鎴愬姛"); - } - }); -}; -/** 鍏抽棴鎸夐挳 */ -const close = () => { - proxy?.$tab.closePage(); -}; -</script> - <template> <el-form ref="userRef" :model="userForm" :rules="rules" label-width="80px"> <el-form-item label="鐢ㄦ埛鏄电О" prop="nickName"> @@ -51,8 +11,8 @@ </el-form-item> <el-form-item label="鎬у埆"> <el-radio-group v-model="userForm.sex"> - <el-radio label="0">鐢�</el-radio> - <el-radio label="1">濂�</el-radio> + <el-radio value="0">鐢�</el-radio> + <el-radio value="1">濂�</el-radio> </el-radio-group> </el-form-item> <el-form-item> @@ -61,3 +21,49 @@ </el-form-item> </el-form> </template> + +<script setup lang="ts"> +import { updateUserProfile } from '@/api/system/user'; +import { propTypes } from '@/utils/propTypes'; + +const props = defineProps({ + user: propTypes.any.isRequired +}); +const userForm = computed(() => props.user); +const { proxy } = getCurrentInstance() as ComponentInternalInstance; +const userRef = ref<ElFormInstance>(); +const rule: ElFormRules = { + 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 rules = ref<ElFormRules>(rule); + +/** 鎻愪氦鎸夐挳 */ +const submit = () => { + userRef.value?.validate(async (valid: boolean) => { + if (valid) { + await updateUserProfile(props.user); + proxy?.$modal.msgSuccess('淇敼鎴愬姛'); + } + }); +}; +/** 鍏抽棴鎸夐挳 */ +const close = () => { + proxy?.$tab.closePage(); +}; +</script> -- Gitblit v1.9.3