Element表单校验validator的使用方法

299 阅读1分钟
<el-form ref="form" :model="form" :rules="rules" label-width="110px">
          <el-form-item label="派工单号" prop="postCode">
            <el-input v-model="form.postCode" />
          </el-form-item>
          <el-form-item label="派工单状态" prop="status">
            <el-select v-model="form.status" style="display: block">
              <el-option
                v-for="dict in statusOptions"
                :key="dict.dictValue"
                :label="dict.dictLabel"
                :value="dict.dictValue"
              />
            </el-select>
          </el-form-item>
</el-form>
data() {
    var validateDeclared = (rule, value, callback) => {
      // if (value === '') {
      //   callback(new Error('请再次输入密码'));
      // } else
      //  this.form 就是你的表单参数,自己打印看一下
      if (value > this.form.plan - this.form.already) {
        callback(new Error("申报数量不能大于计划数量减去已申报数量的差"));
      } else {
        callback();
      }
    };
    return {
      // 表单参数
      form: {},
      // 表单校验
      rules: {
        declared: [
          {
            validator: validateDeclared,
            trigger: "blur",
          },
        ],
      },
    }
}