vue項目中更改密碼並驗證

使發送表單之前即做一次驗證,是否爲原密碼一樣.以及確認新密碼是否錯誤.


在這裏插入圖片描述
<template>
<el-form class=“user-account-key” ref=“form” :model=“form” :rules=“rules” label-width=“100px”>
<el-form-item label=“原密碼” prop=“password”>
<el-input type=“password” placeholder=“請輸入原密碼” v-model=“form.password”></el-input>
</el-form-item>
<el-form-item label=“新密碼” prop=“newPassword”>
<el-input type=“password” placeholder=“請設置新密碼” v-model=“form.newPassword”></el-input>
</el-form-item>
<el-form-item label=“確認密碼” prop=“newPassword2”>
<el-input type=“password” placeholder=“請確認新密碼” v-model=“form.newPassword2”></el-input>
</el-form-item>
<el-form-item>
<el-button type=“primary” @click=“onSubmit(‘form’)”>保存</el-button>
<el-button @click="$refs[‘form’].resetFields()">重置</el-button>
</el-form-item>
</el-form>
</template>

import { updatePassword } from ‘@/api/system/user’ //此處是接口文件可以根據自己需要更改
export default {
data () {
//此處即表單發送之前驗證
let validateNewPassword = (rule, value, callback) => {
if (value === this.form.password) {
callback(new Error(‘新密碼不能與原密碼相同!’))
} else {
callback()
}
}
let validateNewPassword2 = (rule, value, callback) => {
if (value !== this.form.newPassword) {
callback(new Error(‘與新密碼不一致!’))
} else {
callback()
}
}
return {
form: {},
rules: {
password: [
{ required: true, message: ‘請輸入原密碼’, trigger: ‘blur’ }
],
newPassword: [
{ required: true, message: ‘請設置新密碼’, trigger: ‘blur’ },
{ validator: validateNewPassword, trigger: ‘blur’ }
],
newPassword2: [
{ required: true, message: ‘請確認新密碼’, trigger: ‘blur’ },
{ validator: validateNewPassword2, trigger: ‘blur’ }
]
}
}
},
methods: {
onSubmit (formName) {
this.KaTeX parse error: Expected 'EOF', got '&' at position 32: …alidate(valid =&̲gt; { …message.success(‘密碼已修改’)
})
} else {
this.$message.error(‘請正確填寫表單’)
return false
}
})
}
},
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章