vxe-table的编辑表格只校验临时变动的数据

使用官网上的完整校验

复制代码
  async fullValidEvent () {
              const errMap = await this.$refs.xTable.fullValidate().catch(errMap => errMap)
              if (errMap) {
                let msgList = []
                Object.values(errMap).forEach(errList => {
                  errList.forEach(params => {
                    let { rowIndex, column, rules } = params
                    rules.forEach(rule => {
                      msgList.push(`第 ${rowIndex} 行 ${column.title} 校验错误:${rule.message}`)
                    })
                  })
                })
                this.$XModal.message({
                  status: 'error',
                  slots: {
                    default () {
                      return [
                        <div class="red" style="max-height: 400px;overflow: auto;">
                          {
                            msgList.map(msg => <div>{ msg }</div>)
                          }
                        </div>
                      ]
                    }
                  }
                })
              } else {
                this.$XModal.message({ status: 'success', message: '校验成功!' })
              }
            }

表格第一次校验的时候,做了整体校验,校验不通过,当有添加行或者删除行的时候,便只校验操作行,便校验通过了。

原因:

解决:只需要加上fullValidate()方法加上true即可

const errMap = await this.$refs.xTable.fullValidate(true).catch(errMap => errMap)

相关推荐
决斗小饼干3 分钟前
低代码平台工作流引擎设计:从状态机到智能流转的技术演进
前端·低代码·工作流引擎
豆苗学前端8 分钟前
彻底讲透浏览器缓存机制,吊打面试官
前端·javascript·面试
米丘15 分钟前
了解 window.history 和 window.location, 更好地掌握 vue-router、react-router单页面路由
前端
swipe18 分钟前
箭头函数与 this 面试题深度解析:从原理到实战
前端·javascript·面试
星_离41 分钟前
《Vue 自定义指令注册技巧:从手动到自动,效率翻倍》
前端·vue.js
狗头大军之江苏分军41 分钟前
消耗 760万 Token 后,一文看懂了“小龙虾” OpenClaw 和 OpenCode 的区别
前端·后端
毛骗导演41 分钟前
万字解析 OpenClaw 源码架构-安全与权限
前端·架构
哇哇哇哇1 小时前
vue3 ref解析
前端
哇哇哇哇1 小时前
vue3 reactive解析
前端
光影少年1 小时前
Vue的响应式原理?Vue2和Vue3有什么区别?
前端·vue.js·掘金·金石计划