【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的值

相关推荐
凤山老林2 小时前
从美团全栈化看 AI 冲击:前端转全栈,是自救还是必然
前端·人工智能·状态模式
777VG9 小时前
PostgreSQL +martin将多张表输出成一个 MVT
前端·数据库·postgresql
mayaairi9 小时前
JS循环语句深度解析:嵌套for、while与do...while
开发语言·前端·javascript
To_OC9 小时前
啃完流式输出:从一个卡顿的 LLM 接口开始,我搞懂了数据流到底怎么 “流”
前端·javascript·llm
阳光是sunny10 小时前
LangGraph实战教程:defer延迟节点——让收尾工作自动排到最后
前端·人工智能·后端
kyriewen10 小时前
我用了三周Claude Code Skills——总结出5条铁律,第3条最反直觉
前端·ai编程·claude
阳光是sunny10 小时前
LangGraph实战教程:控制流详解
前端·人工智能·后端
格尔曼Noah11 小时前
Safari浏览器中如何只允许指定网站下载
前端·safari
用户0595401744612 小时前
用了3年Redis,才发现我一直没搞懂缓存一致性测试
前端·css
swipe12 小时前
07|(前端转后全栈)为什么后端也要缓存?从前端缓存思维理解 Redis
前端·后端·全栈