对于el-form的rules检测,检测form之外的字段,可以通过使用自定义验证规则实现

31 阅读1分钟

自定义验证规则检测form之外的字段

  • 前端界面
// model绑定form表单,rules绑定校验规则
<el-form ref="dataFormRef" :model="form" :rules="dataRules" label-width="auto" style="max-width: 1200px"v-loading="loading">
    //prop绑定校验字段importdatasetMethod,但importdatasetMethod并不在form表单中
  <el-form-item :label="t('manage.importdatasetMethod')" prop="importdatasetMethod">
    <el-select :placeholder="$t('manage.importdatasetTip')" class="w100" clearable v-model="importdatasetMethod">
      <el-option :key="item.value" :label="item.label" :value="item.value" v-for="(item) in import_method" />
    </el-select>
  </el-form-item>
</el-form>
  • 校验部分
const form = reactive({ baseDatasetId: ''});
const importdatasetMethod = ref("0")
const dataRules = ref({  importdatasetMethod: [
    // { required: true, message: '导入方式不能为空', trigger: 'blur' },
    {
      // 自定义验证规则检测importdatasetMethod 是否为空,并在界面提示
      validator: () => importdatasetMethod.value !== "",
      message: '导入方式不能为空',
      trigger: 'blur',
    }
  ],
 });