Как исправить регулярное выражение для проверяющего электронного письма для ввода с помощью реакции и javascript? - PullRequest
1 голос
/ 07 августа 2020

Я хочу проверить, является ли адрес электронной почты, введенный пользователем, действительным или нет в поле ввода. и если адрес электронной почты неправильный, отключите кнопку добавления. если адрес электронной почты действителен, включите кнопку добавления.

ниже мой код,

function Parent () {
    const [isDisabled, setIsDisabled] = React.useState(true);
    const onEmailChange = (event: any) => {
        setEmail(event.target.value);
    };
    React.useEffect(() => {
        const isValid = /^[a-zA-Z0-9]+@[a-zA-Z0-9]+\.[A-Za-z]+$/.test(email); //this considers ab.ab@mail.com as invalid
        setIsDisabled(!isValid);
    }, [email];

    return (
        <Input
          type="text"
          value={email}
          onChange={onEmailChange}
          placeholder="Insert email"
        />
        <button
            disabled={isDisabled}
        >add</button>
    );
}

это отлично работает. но когда пользователь вводит адрес электронной почты «ab c. ab@email.com», это подтверждается ошибкой. может ли кто-нибудь помочь мне исправить регулярное выражение, чтобы принять это тоже. спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...