解决vue2+elementUI的下拉框出现自动校验的问题

问题:

总结原因是因为新增的时候,传了空值进去

可以这样子解决

js 复制代码
this.formData.value && this.$set(this.model, this.formData.key, this.formData.value)

这种是只有值存在的时候才会给他赋值,但是这只解决单选下拉框,多选下来框还是会

js 复制代码
if (Array.isArray(this.formData.value)) {
      this.$set(this.model, this.formData.key, this.formData.value.length > 0 ? this.formData.value : undefined)
    } else {
      this.formData.value && this.$set(this.model, this.formData.key, this.formData.value)
    }

因为多选的是数组,所以要判断数组的长度是否大于0,才赋值,否者就是undefined

还有一种方法就是一进入页面单独将会出现校验的字段手动清除,

js 复制代码
 this.$nextTick(() => {
          this.$refs['formRef'].clearValidate([item.key])
})

item.key是要清除校验的字段名。是表单ref的formRef

相关推荐
我是苏苏2 小时前
Web开发:C#通过ProcessStartInfo动态调用执行Python脚本
java·服务器·前端
无羡仙2 小时前
Vue插槽
前端·vue.js
哈__3 小时前
React Native 鸿蒙跨平台开发:PixelRatio 像素适配
javascript·react native·react.js
用户6387994773053 小时前
每组件(Per-Component)与集中式(Centralized)i18n
前端·javascript
SsunmdayKT3 小时前
React + Ts eslint配置
前端
开始学java3 小时前
useEffect 空依赖 + 定时器 = 闭包陷阱?count 永远停在 1 的坑我踩透了
前端
zerosrat3 小时前
从零实现 React Native(2): 跨平台支持
前端·react native
狗哥哥3 小时前
🔥 Vue 3 项目深度优化之旅:从 787KB 到极致性能
前端·vue.js
青莲8433 小时前
RecyclerView 完全指南
android·前端·面试