vue3项目实战-登录表单校验

一般校验

为了演示的更清楚,这里在搭建好静态结构之后,先将登录页面的v-if标签由true改为false

此时,回到登录页,我们看到的是未登录的状态下的效果,这里显示请先登录

然后,为登录标签绑定一个事件,点击登录的时候让它跳转到登录页面

接下来,是表单校验的详细过程

准备表单对象

准备校验规则

在对应(el-form)的位置绑定

双向绑定

保存之后,回到浏览器,可以看到被绑定的属性前面多出了✳,即为必选项

而且点击的时候也会提示

自定义校验

首先,在表单对象中添加字段名agree,并将其置为true

然后,在校验规则中同步添加

在表单中进行绑定

保存之后,打开浏览器,控制台验证是否起作用

如果未选中,这里输出

反之,输出true

确认控制台返回结果之后,添加自定义校验逻辑

//自定义校验逻辑:勾选通过,不勾选,未通过
      if(value) {
        callback()
      }else {
        callback(new Error('请勾选同意用户协议'))
      }

传入value,如果成功的话,调用一下callback函数,反之,也调用一下,返回一个错误提示

来浏览器验证一下结果:

整个表单的内容校验

使用场景:每个表单域都有自己的校验触发事件,如果用户一上来就点击登录怎么办?

在点击登录时需要对所有校验的表单进行统一校验,总共分为两个步骤:

获取form表单实例,调用实例方法

1

const formRef = ref(null)

2

为登录操作绑定事件

定义事件,编写逻辑代码:

const doLogin = () => {
  //做表单校验
  formRef.value.validate((valid) => {
    console.log(valid)
    // valid:所有表单都通过校验,才为true
    if(valid) {
      //校验通过,发送登录请求
    }
  })
}

以上就是登录表单校验的全部内容,希望对大家有帮助,下期文章将详细介绍登录相关的业务实现,敬请期待吧~

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
对于Vue 3和Element Plus的表单校验,你可以按照以下步骤进行设置: 1. 首先,确保你已经安装了Vue 3和Element Plus,并在你的项目中引入它们。 2. 创建一个Vue组件,在其中定义你的表单。 3. 在data属性中添加一个对象,用于存储表单数据和校验规则。例如: ```javascript data() { return { form: { name: '', email: '' }, rules: { name: [ { required: true, message: '请输入姓名', trigger: 'blur' } ], email: [ { required: true, message: '请输入邮箱地址', trigger: 'blur' }, { type: 'email', message: '请输入正确的邮箱地址', trigger: ['blur', 'change'] } ] } } } ``` 在上面的例子中,我们定义了一个表单对象`form`,其中包含了`name`和`email`字段。同时,我们定义了校验规则`rules`,对`name`和`email`字段进行校验。 4. 在模板中使用`el-form`和`el-form-item`标签来渲染表单,并绑定校验规则和错误消息。例如: ```html <el-form :model="form" :rules="rules"> <el-form-item label="姓名" prop="name"> <el-input v-model="form.name"></el-input> </el-form-item> <el-form-item label="邮箱" prop="email"> <el-input v-model="form.email"></el-input> </el-form-item> <el-button type="primary" @click="submitForm">提交</el-button> </el-form> ``` 在上面的例子中,我们使用了`prop`属性来指定校验规则的字段名,使用`v-model`指令将表单数据绑定到输入框上。 5. 在组件的方法中,定义一个用于提交表单的方法,并调用`this.$refs.form.validate()`来触发表单校验。例如: ```javascript methods: { submitForm() { this.$refs.form.validate(valid => { if (valid) { // 表单校验通过,可以进行提交操作 console.log('表单校验通过'); } else { // 表单校验不通过,进行错误提示 console.log('表单校验不通过'); } }); } } ``` 在上面的例子中,我们使用了`this.$refs.form.validate()`方法来触发表单校验,并在回调函数中判断校验结果。 这样,你就可以使用Vue 3和Element Plus进行表单校验了。根据实际需求,你可以添加更多的校验规则和自定义错误消息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱学英语的程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值