为什么我进来,下拉框的非空验证就出现了,不应该是我点击后出现吗,为什么呀

为什么我进来,下拉框的非空验证就出现了,不应该是我点击后出现吗,为什么呀

img

img

一、在组件打开时初始化,可以加
Object.assign(this.$data, this.$options.data())
这句;
二、有可能是你打开后给这个表单渲染了一次数据,只是渲染的数据为空值,这种情况一般都有是详情或者编辑时出现

一般这种情况是你第二次打开的时候才会出现。
红色的提示出现有几种情况:
1.trigger指定的事件执行时;
2.表单提交前调用了validate();
3.手动单独检验某个字段validateField();
如果以上这些都不是,就只能是上一次的检验没有清除;
解决办法(N选1):
1.每次打开组件的时候重新渲染;
2.打开子组件前或关闭组件后调用clearValidate()手动清除, 也可调用resetFields(),只是清除效果的同时还会重置表单项的值;

不排除是赋值顺序问题 先赋值在加载组件 ,试一下 然后排查一下 清除行为是怎么写的