赞
踩
今天写个Vue页面,这个校验真的是绝了,两个下拉选择的输入框,一样的写法,一个选择后校验提醒会消失,另一个一直不消失,我用表单校验方法在属性更新后单独校验,这个提示还是不消失,然后我把他俩的位置换了一下,发现就那个位置的表单项校验有问题,真的是离谱。后来看文档,翻百度,发现这是vue为了提高性能去复用相同组件导致的,所以需要给每个表单项一个唯一标识的key,让vue对它们单独操作,如下图所示
这样就完美解决了,救命,被这个校验折磨了俩小时!
!!补充!!
好好好,后来又有两个表单项,看遍了表单校验所有要注意的点,发现都不行,明明有值但校验报错就是不消失,尝试了很多方法,下面这个自定义校验终于生效了!
- projectName: [
- { required: true, validator: this.checkProjectName, trigger: 'change' },
- ],
- checkProjectName (rule, value, callback) {
- value = this.addForm.projectName;
- if (!value)
- callback(new Error("请选择所属项目"));
- else
- callback();
- },
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。