From 251d2411f235e23209d57173857e05b637729ce8 Mon Sep 17 00:00:00 2001 From: LiuHao <liuhaoai545@gmail.com> Date: 星期日, 02 四月 2023 01:01:56 +0800 Subject: [PATCH] refactor ts --- src/views/system/user/profile/resetPwd.vue | 71 +++++++++++++++++++---------------- 1 files changed, 38 insertions(+), 33 deletions(-) diff --git a/src/views/system/user/profile/resetPwd.vue b/src/views/system/user/profile/resetPwd.vue index dec2d79..0207342 100644 --- a/src/views/system/user/profile/resetPwd.vue +++ b/src/views/system/user/profile/resetPwd.vue @@ -1,34 +1,22 @@ -<template> - <el-form ref="pwdRef" :model="user" :rules="rules" label-width="80px"> - <el-form-item label="鏃у瘑鐮�" prop="oldPassword"> - <el-input v-model="user.oldPassword" placeholder="璇疯緭鍏ユ棫瀵嗙爜" type="password" show-password /> - </el-form-item> - <el-form-item label="鏂板瘑鐮�" prop="newPassword"> - <el-input v-model="user.newPassword" placeholder="璇疯緭鍏ユ柊瀵嗙爜" type="password" show-password /> - </el-form-item> - <el-form-item label="纭瀵嗙爜" prop="confirmPassword"> - <el-input v-model="user.confirmPassword" placeholder="璇风‘璁ゆ柊瀵嗙爜" type="password" show-password/> - </el-form-item> - <el-form-item> - <el-button type="primary" @click="submit">淇濆瓨</el-button> - <el-button type="danger" @click="close">鍏抽棴</el-button> - </el-form-item> - </el-form> -</template> +<script setup lang="ts"> +import { updateUserPwd } from '@/api/system/user'; +import { ComponentInternalInstance } from 'vue'; +import { ResetPwdForm } from '@/api/system/user/types' +import { ElForm } from 'element-plus'; -<script setup> -import { updateUserPwd } from "@/api/system/user"; +const { proxy } = getCurrentInstance() as ComponentInternalInstance; -const { proxy } = getCurrentInstance(); -const user = reactive({ - oldPassword: undefined, - newPassword: undefined, - confirmPassword: undefined +const pwdRef = ref(ElForm); + +const user = ref<ResetPwdForm>({ + oldPassword: '', + newPassword: '', + confirmPassword: '' }); -const equalToPassword = (rule, value, callback) => { - if (user.newPassword !== value) { +const equalToPassword = (rule: any, value: string, callback: any) => { + if (user.value.newPassword !== value) { callback(new Error("涓ゆ杈撳叆鐨勫瘑鐮佷笉涓�鑷�")); } else { callback(); @@ -41,17 +29,34 @@ }); /** 鎻愪氦鎸夐挳 */ -function submit() { - proxy.$refs.pwdRef.validate(valid => { +const submit = () => { + pwdRef.value.validate(async (valid: boolean) => { if (valid) { - updateUserPwd(user.oldPassword, user.newPassword).then(response => { - proxy.$modal.msgSuccess("淇敼鎴愬姛"); - }); + await updateUserPwd(user.value.oldPassword, user.value.newPassword) + proxy?.$modal.msgSuccess("淇敼鎴愬姛"); } }); }; /** 鍏抽棴鎸夐挳 */ -function close() { - proxy.$tab.closePage(); +const close = () => { + proxy?.$tab.closePage(); }; </script> + +<template> + <el-form ref="pwdRef" :model="user" :rules="rules" label-width="80px"> + <el-form-item label="鏃у瘑鐮�" prop="oldPassword"> + <el-input v-model="user.oldPassword" placeholder="璇疯緭鍏ユ棫瀵嗙爜" type="password" show-password /> + </el-form-item> + <el-form-item label="鏂板瘑鐮�" prop="newPassword"> + <el-input v-model="user.newPassword" placeholder="璇疯緭鍏ユ柊瀵嗙爜" type="password" show-password /> + </el-form-item> + <el-form-item label="纭瀵嗙爜" prop="confirmPassword"> + <el-input v-model="user.confirmPassword" placeholder="璇风‘璁ゆ柊瀵嗙爜" type="password" show-password /> + </el-form-item> + <el-form-item> + <el-button type="primary" @click="submit">淇濆瓨</el-button> + <el-button type="danger" @click="close">鍏抽棴</el-button> + </el-form-item> + </el-form> +</template> -- Gitblit v1.9.3