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

相关推荐
zru_960233 分钟前
Vue 常用组件介绍博客
前端·javascript·vue.js
ConardLi1 小时前
MCP + 数据库,一种比 RAG 检索效果更好的新方式!
javascript·数据库·人工智能
m0_616188492 小时前
PDF预览-搜索并高亮文本
开发语言·javascript·ecmascript
勘察加熊人2 小时前
vue猜词游戏
前端·vue.js·游戏
且心2 小时前
【问题处理】webpack4升webpack5,报错Uncaught ReferrnceError: process is not defined
前端·webpack5·process·uncaught·referrnceerror
美美打不死2 小时前
webpack js 逆向 --- 个人记录
开发语言·javascript·webpack
我是哈哈hh2 小时前
【Vue】 核心特性实战解析:computed、watch、条件渲染与列表渲染
前端·javascript·vue.js·前端框架·vue·语法基础
龙在天3 小时前
“手速太快,分页翻车?”,前端分页竞态问题,看这一篇就够了
前端
前端Hardy3 小时前
HTML&CSS:超好看的收缩展开菜单
javascript·css·html