使用validation-provider,确认密码的检验应该如何写
学了本节的validation-provider检验的,其他地方都能写,唯独这个注册的确认密码这一项实在不会写了,在网上找的方案如下:
密码的的部分加了一个
vid="password"
确认密码的检验,就直接写成了
rules="confirmed:password"
<div class="layui-form-item"> <validation-provider name="password" rules="required|min:6" v-slot="{errors}" vid="password"> <div class="layui-row"> <label class="layui-form-label">密码</label> <div class="layui-input-inline"> <input type="password" name="password" v-model.trim="password" placeholder="请输入密码" autocomplete="off" class="layui-input"> </div> <div class="layui-form-mid layui-word-aux">6到16个字符</div> </div> <div class="error smsCode-error">{{errors[0]}}</div> </validation-provider> </div> <div class="layui-form-item"> <validation-provider name="repass" rules="confirmed:password" v-slot="{errors}"> <label class="layui-form-label">确认密码</label> <div class="layui-input-inline"> <input type="password" name="repass" autocomplete="off" class="layui-input"> </div> <div class="error layui-form-mid">{{errors[0]}}</div> </validation-provider> </div>
页面中却还是不起效果 不知道是哪里出错了,希望老师能指点一下
2
收起
正在回答 回答被采纳积分+1
1回答
慕雪晨
2023-08-11 15:49:53
找到问题所在了,正确的写法是这样的
<ValidationObserver> <div class="layui-form-item"> <validation-provider name="password" rules="required|min:6" v-slot="{errors}" vid="passwordInfo"> <div class="layui-row"> <label class="layui-form-label">密码</label> <div class="layui-input-inline"> <input type="password" name="password" v-model.trim="passwordInfo" placeholder="请输入密码" autocomplete="off" class="layui-input"> </div> <div class="layui-form-mid layui-word-aux">6到16个字符</div> </div> <div class="error smsCode-error">{{errors[0]}}</div> </validation-provider> </div> <div class="layui-form-item"> <validation-provider name="repass" rules="confirmed:passwordInfo" v-slot="{errors}"> <label class="layui-form-label">确认密码</label> <div class="layui-input-inline"> <input type="password" name="repass" v-model="repass" autocomplete="off" class="layui-input"> </div> <div class="error layui-form-mid">{{errors[0]}}</div> </validation-provider> </div> </ValidationObserver>
import { ValidationProvider, ValidationObserver } from 'vee-validate'
然后再注册 ValidationObserver,I18n.js里加一个confirmed的定义
confirmed: '两次密码输入不一致'
就可以了
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星