From 31f7b390b44db12308943492891e7e0ef96f32e8 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期三, 30 十月 2024 22:10:00 +0800 Subject: [PATCH] 优化 --- src/views/user/admin/edit.vue | 50 ++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 40 insertions(+), 10 deletions(-) diff --git a/src/views/user/admin/edit.vue b/src/views/user/admin/edit.vue index 40d73a9..9fbfb4f 100644 --- a/src/views/user/admin/edit.vue +++ b/src/views/user/admin/edit.vue @@ -2,14 +2,17 @@ <div class="app-container"> <el-form :model="form" ref="form" label-width="100px" v-loading="formLoading" :rules="rules"> - <el-form-item label="鐢ㄦ埛鍚嶏細" prop="userName" required> + <el-form-item label="鐪熷疄濮撳悕锛�" prop="realName"> + <el-input v-model="form.realName"></el-input> + </el-form-item> + <el-form-item label="鎵嬫満鍙风爜锛�" prop="phone"> + <el-input v-model="form.phone"></el-input> + </el-form-item> + <el-form-item label="鐧诲綍璐﹀彿锛�" prop="userName"> <el-input v-model="form.userName"></el-input> </el-form-item> - <el-form-item label="瀵嗙爜锛�" required> - <el-input v-model="form.password"></el-input> - </el-form-item> - <el-form-item label="鐪熷疄濮撳悕锛�" prop="realName" required> - <el-input v-model="form.realName"></el-input> + <el-form-item v-if="!form.id" label="鐧诲綍瀵嗙爜锛�" prop="password"> + <el-input v-model="form.password" show-password></el-input> </el-form-item> <el-form-item label="骞撮緞锛�"> <el-input v-model="form.age"></el-input> @@ -22,10 +25,7 @@ <el-form-item label="鍑虹敓鏃ユ湡锛�"> <el-date-picker v-model="form.birthDay" value-format="yyyy-MM-dd" type="date" placeholder="閫夋嫨鏃ユ湡"/> </el-form-item> - <el-form-item label="鎵嬫満锛�"> - <el-input v-model="form.phone"></el-input> - </el-form-item> - <el-form-item label="鐘舵�侊細" required> + <el-form-item label="鐘舵�侊細"> <el-select v-model="form.status" placeholder="鐘舵��"> <el-option v-for="item in statusEnum" :key="item.key" :value="item.key" :label="item.value"></el-option> </el-select> @@ -44,6 +44,30 @@ export default { data () { + var validatePassword = (rule, value, callback) => { + if (value === '') { + callback(new Error('璇疯緭鍏ョ櫥褰曞瘑鐮�')) + } else if (!/[A-Z]/.test(value)) { + callback(new Error('瀵嗙爜蹇呴』鍖呭惈鑷冲皯涓�涓ぇ鍐欏瓧姣�')) + } else if (!/[a-z]/.test(value)) { + callback(new Error('瀵嗙爜蹇呴』鍖呭惈鑷冲皯涓�涓皬鍐欏瓧姣�')) + } else if (!/[0-9]/.test(value)) { + callback(new Error('瀵嗙爜蹇呴』鍖呭惈鑷冲皯涓�涓暟瀛�')) + } else { + callback() + } + } + var validatePhone = (rule, value, callback) => { + // 鎵嬫満鍙烽獙璇侀�昏緫 + const phoneRegex = /^1[3-9]\d{9}$/; + if (!value) { + callback(new Error('璇疯緭鍏ユ墜鏈哄彿')); + } else if (!phoneRegex.test(value)) { + callback(new Error('鎵嬫満鍙锋牸寮忎笉姝g‘')); + } else { + callback(); + } + } return { form: { id: null, @@ -64,6 +88,12 @@ ], realName: [ { required: true, message: '璇疯緭鍏ョ湡瀹炲鍚�', trigger: 'blur' } + ], + password: [ + { validator: validatePassword, trigger: 'blur' } + ], + phone: [ + { validator: validatePhone, trigger: 'blur' } ] } } -- Gitblit v1.8.0