问题描述
切换下拉框选项,下面的输入框联动显示指定内容或者清空内容,在显示指定内容的情况下,一切正常;
当需要清空内容时,清空这一动作会触发校验规则,于是会出现切换下拉选项后清空内容立即出现校验规则“此项为必填项” ,但这样是不对的,因为用户并没有开始填写。
解决办法
经过各种移除校验的尝试,只有一种方式可以达到效果:
例如:需移除校验的是domainCode字段,那么:
1. 将domainCode的校验规则全部移除;
2. 将domainCode字段清空;
3. 在setTimeout里再把校验规则加上,注意:必须要在setTImeout里面,因为需要稍微一丢丢的延迟。
this.rules.domainCode = [];
this.mainForm.domainCode = '';
setTimeout(()=>{
this.rules.domainCode = [RULE_NUMBER20, RULE_REQUIRED];
},0)