|
|
@@ -14,7 +14,7 @@
|
|
|
<div class="right">
|
|
|
<div class="title">{{ projectName }}</div>
|
|
|
<div class="title sub-title">欢迎登录</div>
|
|
|
- <el-form :model="form" :rules="rules" label-width="0" @keyup.enter="login">
|
|
|
+ <el-form ref="loginForm" :model="form" :rules="rules" label-width="0" @keyup.enter="login">
|
|
|
<el-row>
|
|
|
<el-col :span="24">
|
|
|
<el-form-item prop="username">
|
|
|
@@ -63,17 +63,27 @@ const rules = reactive({
|
|
|
password: [{ required: true, trigger: "blur", message: "密码不能为空" }]
|
|
|
});
|
|
|
|
|
|
+const loginForm = ref();
|
|
|
const updatePwd = ref();
|
|
|
const islogin = ref(false);
|
|
|
|
|
|
const login = () => {
|
|
|
- islogin.value = true;
|
|
|
- useUserStore().login(form).then(() => {
|
|
|
- islogin.value = false;
|
|
|
- router.push("/");
|
|
|
- }).catch(code => {
|
|
|
- islogin.value = false;
|
|
|
- if (code === 204) updatePwd.value.open();
|
|
|
+ loginForm.value.validate(valid => {
|
|
|
+ if (valid) {
|
|
|
+ islogin.value = true;
|
|
|
+ useUserStore().login(form).then(() => {
|
|
|
+ islogin.value = false;
|
|
|
+ router.push("/");
|
|
|
+ }).catch(code => {
|
|
|
+ islogin.value = false;
|
|
|
+ if (code === 204) {
|
|
|
+ form.value.password = null;
|
|
|
+ updatePwd.value.open();
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
})
|
|
|
}
|
|
|
|