|
|
@ -25,7 +25,7 @@ |
|
|
|
</view> |
|
|
|
</u-form-item> |
|
|
|
|
|
|
|
<u-form-item label="验证码" prop="username"> |
|
|
|
<u-form-item label="验证码" prop="code"> |
|
|
|
<view style="width:100%; display: flex;"> |
|
|
|
<view class="form-item-box" style="flex:1"> |
|
|
|
<u-input autocomplete="off" class="form-item-input" v-model="form.code" |
|
|
@ -36,10 +36,11 @@ |
|
|
|
</view> |
|
|
|
|
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</u-form-item> |
|
|
|
<view @click="handleError(configData)"> 忘记密码?</view> |
|
|
|
</u-form> |
|
|
|
|
|
|
|
<view class="log-but" @click="handleLogin"> 登录 </view> |
|
|
|
</div> |
|
|
|
</div> |
|
|
@ -53,7 +54,8 @@ |
|
|
|
} from "vuex"; |
|
|
|
import { |
|
|
|
login, |
|
|
|
captchaImage |
|
|
|
captchaImage, |
|
|
|
config |
|
|
|
} from "@/common/userApi"; |
|
|
|
export default { |
|
|
|
name: "SignIn", |
|
|
@ -65,36 +67,24 @@ |
|
|
|
form: { |
|
|
|
username: "", |
|
|
|
password: "", |
|
|
|
|
|
|
|
}, |
|
|
|
configData:'', |
|
|
|
rules: { |
|
|
|
phone: [{ |
|
|
|
required: true, |
|
|
|
message: "请输入手机号", |
|
|
|
trigger: ["blur"], |
|
|
|
}, |
|
|
|
{ |
|
|
|
// 自定义验证函数 |
|
|
|
validator: (rule, value, callback) => { |
|
|
|
// 返回true表示校验通过,返回false表示不通过 |
|
|
|
// 过滤第一层,先判断输入为不为空,因为required: false,不是必填项,所以为空应该返回true |
|
|
|
let regs = /^1[3-9]\d{9}$/; |
|
|
|
if (!regs.test(this.form.phone)) { |
|
|
|
return this.$u.test.mobile(value); |
|
|
|
} else { |
|
|
|
return true; |
|
|
|
} |
|
|
|
}, |
|
|
|
message: "手机号码格式不正确", |
|
|
|
// 触发器可以同时用blur和change |
|
|
|
trigger: ["change", "blur"], |
|
|
|
}, |
|
|
|
], |
|
|
|
username: [{ |
|
|
|
required: true, |
|
|
|
message: "请输入用户名", |
|
|
|
trigger: ["blur"], |
|
|
|
}, ], |
|
|
|
}], |
|
|
|
password: [{ |
|
|
|
required: true, |
|
|
|
message: "请输入密码", |
|
|
|
trigger: ["blur"], |
|
|
|
}], |
|
|
|
code: [{ |
|
|
|
required: true, |
|
|
|
message: "请输入验证码", |
|
|
|
trigger: ["blur"], |
|
|
|
}], |
|
|
|
}, |
|
|
|
}; |
|
|
|
}, |
|
|
@ -103,9 +93,22 @@ |
|
|
|
}, |
|
|
|
created() { |
|
|
|
this.getCaptchaImage() // 获取验证码 |
|
|
|
this.getConfig() // 获取配置信息 |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
...mapMutations(["setTrainPath"]), |
|
|
|
// 获取验证码 |
|
|
|
async getConfig() { |
|
|
|
const res = await config('sys.password.forget'); |
|
|
|
const { |
|
|
|
code, |
|
|
|
rows, |
|
|
|
msg |
|
|
|
} = res; |
|
|
|
if (code === 200) { |
|
|
|
this.configData = rows[0]?.configValue || '' |
|
|
|
} |
|
|
|
}, |
|
|
|
// 获取验证码 |
|
|
|
async getCaptchaImage() { |
|
|
|
const res = await captchaImage(); |
|
|
|