-1

我有一个登录页面(下面的代码),它要求输入用户名登录,我尝试添加检查以确保长度为 7(我的数据库中任何用户的长度),并且只输入数字而不是字母。但是我现在想调用我的 web api 来检查输入的用户名是否有效,但我不知道该怎么做,有人可以帮忙吗?

在我的 API 中,我有一个获取所有用户名方法和一个获取用户/方法

import React, { useState } from "react";
import { useHistory } from "react-router-dom";
import "./Login.css";

export default function LogIn() {
  const history = useHistory();
  const [value, setValue] = useState("");
  const regexp = /^[0-9\b]+$/;
  

  function handleChange(e) {
    setValue(e.target.value);
  }

  function handleSubmit(e) {
    e.preventDefault();
    
    if (!regexp.test(value)) {
      alert("Username should not contain letters, please re-enter");

      return;
    }

    return history.replace("/UserWelcome", value);
  }

  return (
    <div className="Login">
        <form onSubmit={handleSubmit}>
        <h1>Log into our Messaging Service</h1>
          <label>
            Username:
            <input
              type="text"
              name="UserId"
              value={value}
              onChange={handleChange}
              required
              maxLength="7"
              minLength="7"
            />
          </label>
          <button>Log In</button>
        </form>
    </div>
  );
}

在此处输入图像描述

4

1 回答 1

1
  1. 获取useEffect中的数据

如何在 useEffect 中发出 get 请求

  1. 使用 filter、includes 或 indexOf 方法使用输入值过滤响应数据

  2. 如果为真,则验证值

如何使用过滤方法

如何使用 indexOf

使用方法包括

于 2020-11-05T22:52:45.403 回答