【vue】rules校验规则简单描述

以ant举个例子

java 复制代码
<a-form-model :model="form"  layout="inline"  :rules="rules"
                      ref="portRuleForm">
</a-form-model>

这里面重要的字段有几个rules model ref

现在有个时间框要校验,先写好代码

java 复制代码
<a-form-model-item label="基准日期" prop="baseDate">
                        <a-date-picker class="jy-wfull" v-model="form.baseDate" />
                    </a-form-model-item>

这里的modelform.baseDate 对应上面的model="form",所以我们的propbaseDate,注意要校验那个字段,就去写哪个model名字在prop

下面描述下规则,这个要写data里面

java 复制代码
rules: {
                    baseDate: [
                        { required: true, message: '请选择时间', trigger: 'change' },
                    ]
       }

这个是简单点的,如果自定义规则

java 复制代码
baseDate: [
                        { required: true, message: '请选择时间'},
                        { validator: this.validateBaseDate, trigger: 'change' }
          ],

然后我们在methods里写入方法

java 复制代码
validateBaseDate(rule, value, callback) {
                if(!this.form.XXXX){
                    callback(new Error('请选择时间'));
                }else{
                    callback();
                }
            },

最后是提交的时候加入判断

java 复制代码
savePortRule() {
                this.$refs.portRuleForm.validate((valid) => {
                    if (valid) {
                        XXXX提交到后端
                    }
                })
            },

这里的portRuleForm是最上面a-form-model里的ref的值

相关推荐
小兵张健19 分钟前
价值1000的 AI 工作流:Codex 通用前端协作模式
前端·aigc·ai编程
sunny_29 分钟前
面试踩大坑!同一段 Node.js 代码,CJS 和 ESM 的执行顺序居然是反的?!99% 的人都答错了
前端·面试·node.js
拉不动的猪42 分钟前
移动端调试工具VConsole初始化时的加载阻塞问题
前端·javascript·微信小程序
ayqy贾杰2 小时前
Agent First Engineering
前端·vue.js·面试
IT_陈寒3 小时前
SpringBoot实战:5个让你的API性能翻倍的隐藏技巧
前端·人工智能·后端
iceiceiceice3 小时前
iOS PDF阅读器段评实现:如何从 PDFSelection 精准还原一个自然段
前端·人工智能·ios
大金乄3 小时前
封装一个vue2的elementUI 表格组件(包含表格编辑以及多级表头)
前端·javascript
葡萄城技术团队4 小时前
【性能优化篇】面对万行数据也不卡顿?揭秘协同服务器的“片段机制 (Fragments)”
前端
程序员阿峰4 小时前
2026前端必备:TensorFlow.js,浏览器里的AI引擎,不写Python也能玩转智能
前端
Jans4 小时前
Shipfe — Rust 写的前端静态部署工具:一条命令上线 + 零停机 + 可回滚 + 自动清理
前端