vue3自定義確認(rèn)密碼匹配驗(yàn)證規(guī)則的操作代碼
vue3自定義確認(rèn)密碼匹配驗(yàn)證規(guī)則

// 自定義確認(rèn)密碼匹配驗(yàn)證規(guī)則
const matchPassword = (rules:any, value:any, callback:any) => {
if (value != addData.payPwd) {
callback(new Error('兩次密碼輸入不一致!'))
} else {
callback()
}
}
const rules = reactive({
payPwd: [
{ required: true, message: "請(qǐng)輸入支付密碼", trigger: "blur" },
{
pattern: /^\d+$/,
message: "只能輸入6位數(shù)字",
trigger: "blur",
},
],
repeatedPwd: [
{ required: true, message: "請(qǐng)輸入支付密碼", trigger: "blur" },
{
pattern: /^\d+$/,
message: "只能輸入6位數(shù)字",
trigger: "blur",
},
{validator: matchPassword, trigger: 'blur'}
],
});
<el-dialog
v-model="AddDialog"
title="新增會(huì)員"
width="700px"
@close="closeDialog"
>
<el-form
ref="categoryFormRef"
:model="addData"
:rules="rules"
label-width="120px"
>
<el-form-item label="支付密碼" prop="payPwd">
<el-input
v-model="addData.payPwd"
placeholder="請(qǐng)輸入支付密碼"
show-password
maxLength="6"
/>
</el-form-item>
<el-form-item label="確認(rèn)支付密碼" prop="repeatedPwd">
<el-input
v-model="addData.repeatedPwd"
placeholder="請(qǐng)輸入支付密碼"
show-password
maxLength="6"
/>
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="handleAdd">確 定</el-button>
<el-button @click="closeDialog">取 消</el-button>
</div>
</template>
</el-dialog>擴(kuò)展:
vue中表單使用自定義驗(yàn)證規(guī)則
vue中表單使用自定義驗(yàn)證規(guī)則(以2次輸入密碼為例)
先安裝elementUI
yarn add element-ui
mian.js中引入elementUI
import ElementUI from 'element-ui'; import 'element-ui/lib/theme-chalk/index.css'; Vue.use(ElementUI);
創(chuàng)建表單
<el-form ref="form" :model="form" :rules="rules">
<el-form-item label="新密碼" prop="newPwd">
<el-input type="password" v-model="form.newPwd"></el-input>
</el-form-item>
<el-form-item label="確認(rèn)密碼" prop="confirmPwd">
<el-input type="password" v-model="form.confirmPwd"></el-input>
</el-form-item>
<el-form-item>
<el-button @click="confirmBtn">確認(rèn)</el-button>
<el-button @click="resetBtn">重置</el-button>
</el-form-item>
</el-form>定義數(shù)據(jù)及驗(yàn)證規(guī)則
data() {
var checkPwd = (rule, value, callback) => {
if (value === this.form.newPwd) {
callback();
} else {
callback(new Error('兩次輸入密碼不一致!'));
}
}
return {
form: {
newPwd: '',
confirmPwd: ''
},
rules: {
newPwd: [
{ required: true, message: '請(qǐng)輸入密碼', trigger: 'blur' },
{ min: 6, max: 12, message: '長(zhǎng)度在 6 到 12 個(gè)字符', trigger: 'blur' }
],
confirmPwd: [
{ required: true, message: '請(qǐng)?jiān)俅屋斎朊艽a', trigger: 'blur' },
{ min: 6, max: 12, message: '長(zhǎng)度在 6 到 12 個(gè)字符', trigger: 'blur' },
{ validator: checkPwd, trigger: 'blur' }
]
}
}
},綁定操作按鈕
methods: {
//確認(rèn)按鈕
confirmBtn() {
this.$refs.form.validate(res => {
if (res) {
console.log('修改成功');
} else {
console.log('修改失敗');
return false;
}
});
},
//重置按鈕
resetBtn() {
this.$refs.form.resetFields();
}
}到此這篇關(guān)于vue3自定義確認(rèn)密碼匹配驗(yàn)證規(guī)則的文章就介紹到這了,更多相關(guān)vue3自定義密碼驗(yàn)證規(guī)則內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue導(dǎo)入excel文件,vue導(dǎo)入多個(gè)sheets的方式
這篇文章主要介紹了vue導(dǎo)入excel文件,vue導(dǎo)入多個(gè)sheets的方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08
Vue2中無(wú)法監(jiān)聽(tīng)數(shù)組和對(duì)象的某些變化問(wèn)題
這篇文章主要介紹了Vue2中無(wú)法監(jiān)聽(tīng)數(shù)組和對(duì)象的某些變化問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08
vue中如何使用embed標(biāo)簽PDF預(yù)覽
這篇文章主要介紹了vue中如何使用embed標(biāo)簽PDF預(yù)覽,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05
詳解vue-cli 構(gòu)建Vue項(xiàng)目遇到的坑
本篇文章主要介紹了詳解vue-cli 構(gòu)建Vue項(xiàng)目遇到的坑,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-08-08
關(guān)于Element-UI中slot的用法及說(shuō)明
這篇文章主要介紹了關(guān)于Element-UI中slot的用法及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-10-10
使用form-create動(dòng)態(tài)生成vue自定義組件和嵌套表單組件
這篇文章主要介紹了使用form-create動(dòng)態(tài)生成vue自定義組件和嵌套表單組件,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-01-01

