vue 的表单验证

1.使用包裹整个表单 在其中使用:model 绑定数据 和 :rules绑定校验规则

 

......................................

2.在script中添加使用数据 以及 校验规则(都添加在data中)

 data() {

    return {

      user: {

          username:'',

          password:''

      },

        rules: {

//校验数据

    username: [

      { required: true, message: "请输入用户名", trigger: "blur" },

      { min: 3, max: 10, message: "长度在 3 到 10个字符", trigger: "blur" },

    ],

    password: [

      { required: true, message: "请输入密码", trigger: "blur" },

      { min: 1, max: 10, message: "长度在 3 到 10 个字符", trigger: "blur" },

    ],

  }

    };

  },

3.在input应该被el-from-item包裹 传入prop (prop对应校验数据) 

   

登录

        username">

         

            size="medium"

            style="margin: 10px auto"

            prefix-icon="el-icon-user"

            v-model="user.username" >

     

 

4.数据提交校验  在中使用ref (校验失败就不会发送请求)ref:本页面获取dom元素

 " ref="userForm">

在method方法中使用回调判断数据校验 

methods: {

    login() {

      this.$refs['userForm'].validate((valid) => {

        //如果合法

        if (valid) {

          request.post("/user/login", this.user).then((res) => {

            if (!res) {

              this.$message.error("密码错误,请重试");

            } else {

              this.$message.success("登录成功");

              this.$router.push("/");

            }

          });

        }

        //非法

        else {

            console.log("失败");

            return false;

        }

      });

    },

  },

结果:vue 的表单验证_第1张图片 

你可能感兴趣的:(vue,vue,前端)