el-form只对rules中个别字段进行校验

正常属性校验方式

js 复制代码
const moveToErr = () => {
  const errorDom = document.getElementsByClassName('el-form-item__error');
  console.log(errorDom)
  if (errorDom.length) {
    errorDom[0].scrollIntoView({
      block: 'center',
      behavior: 'smooth'
    })
  }
};

const saveItem = async (formEl?: FormInstance | undefined) => {
  const newFormEl = formEl?.[0] ? formEl[0] : formEl;
  if (newFormEl) {
    const valid = await newFormEl.validate((valid, fields) => !!valid);
    if (!valid) {
      moveToErr();
      return false;
    }
  }
}

针对个别属性进行校验(validateField)

js 复制代码
const submitVideoUpload = async (formEl?: FormInstance | undefined) => {
  const newFormEl = formEl?.[0] ? formEl[0] : formEl;
  console.log(newFormEl, 'newFormEl')
  if (newFormEl) {
    const valid = await newFormEl.validateField('video', (valid, fields) => !!valid);
    if (!valid) {
      moveToErr();
      return false;
    }
  }
}
相关推荐
Penge6661 小时前
JavaScript:BOM 详解
前端
梯度下降者2 小时前
Nuxt框架
vue.js·服务端渲染·全栈开发·混合渲染·nuxt框架
Penge6662 小时前
Vite vs Webpack:前端构建工具原理与实战
前端
Penge6662 小时前
前端包管理工具:npm、Yarn、pnpm 快速入门
前端
Penge6663 小时前
Sass 了解
前端
Penge6663 小时前
Webpack 打包从 0 到 1 实战笔记
前端
Penge6663 小时前
Webpack 入门:是什么、为什么需要、怎么使用?
前端
Penge6663 小时前
Ant Design(Antd)了解
前端
wangruofeng4 小时前
同一行代码,百种渲染:Asuka、React Native 与 Flutter 跨平台渲染机制深度拆解
前端·github
Penge6664 小时前
JavaScript 核心语法速通
前端