import React, { useEffect, useState } from 'react'; import { useHistory } from 'react-router-dom'; import { LoadingButton } from '@material-ui/lab'; import axios from 'axios'; import Alert from '../../component/alert'; const ParentRegister = () => { const history = useHistory(); const [email, setEmail] = useState(''); const [_422errors, set422Errors] = useState({email:''}) const [_400error, set400Error] = useState({status:'', msg:''}) const [submitStatus, setSubmitStatus] = useState('') const validateForm = () => { let errors = {}; let formIsValid = true; if (email.length == 0) { formIsValid = false; errors["email"] = 'Required'; } else { //regular expression for email validation var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i); if (!pattern.test(email)) { formIsValid = false; errors["email"] = 'Required'; } else { errors['email'] = ''; } } set422Errors(errors); return formIsValid; } const handleSubmit = (e) => { e.preventDefault(); set400Error({status:'', msg:''}); if(!validateForm()) return; const formdata = new FormData(); // formdata.append('email', email); // axios.post('/', formdata) // .then(response => { // if(response.data.status_code==200){ // setSubmitStatus('success); // } // else if(response.data.status_code==400){ // setSubmitStatus('failed); // } // }) // .catch(err=>console.log(err)) } return (

親追加

setEmail(e.target.value)}/> { _422errors['email'].length != 0 && {_422errors['email']} }
親追加
{ submitStatus == 'success' && Submit Success! } { submitStatus == 'fail' && Submit Failed! }
) } export default ParentRegister;