|
@@ -27,12 +27,25 @@ export default defineComponent({
|
|
|
code: null
|
|
|
});
|
|
|
|
|
|
+ const validatePass2 = (rule: any, value: any, callback: any): any => {
|
|
|
+ const reg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/;
|
|
|
+ if (value === '') {
|
|
|
+ callback(new Error('请再次输入密码'));
|
|
|
+ } else if (value !== forms.password) {
|
|
|
+ callback(new Error('两次输入密码不一致'));
|
|
|
+ } else if (!reg.test(value)) {
|
|
|
+ callback(new Error('密码为6-20位数字和字母组合'));
|
|
|
+ } else {
|
|
|
+ callback();
|
|
|
+ }
|
|
|
+ };
|
|
|
+
|
|
|
const gotoClassPage = () => {
|
|
|
formsRef.value.validate(async (error: any) => {
|
|
|
if (error) return;
|
|
|
|
|
|
if (forms.password !== forms.rePassword) {
|
|
|
- message.error('两次密码不一致');
|
|
|
+ message.error('两次输入密码不一致');
|
|
|
return;
|
|
|
}
|
|
|
|
|
@@ -109,11 +122,18 @@ export default defineComponent({
|
|
|
{
|
|
|
required: true,
|
|
|
message: '请输入新密码'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ pattern: /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/,
|
|
|
+ message: '密码为6-20位数字和字母组合',
|
|
|
+ trigger: 'blur'
|
|
|
}
|
|
|
]}>
|
|
|
<NInput
|
|
|
v-model:value={forms.password}
|
|
|
clearable
|
|
|
+ type="password"
|
|
|
+ show-password-on="click"
|
|
|
placeholder={'请输入新密码'}
|
|
|
/>
|
|
|
</NFormItem>
|
|
@@ -122,13 +142,16 @@ export default defineComponent({
|
|
|
label="再次输入"
|
|
|
rule={[
|
|
|
{
|
|
|
- required: true,
|
|
|
- message: '再次输入新密码'
|
|
|
+ validator: validatePass2,
|
|
|
+ trigger: 'blur',
|
|
|
+ required: true
|
|
|
}
|
|
|
]}>
|
|
|
<NInput
|
|
|
v-model:value={forms.rePassword}
|
|
|
clearable
|
|
|
+ type="password"
|
|
|
+ show-password-on="click"
|
|
|
placeholder={'再次输入新密码'}
|
|
|
/>
|
|
|
</NFormItem>
|