import React, { useEffect, useState } from 'react'; import ReactDOM from 'react-dom'; import { Button } from '@material-ui/core'; import { LoadingButton } from '@material-ui/lab'; import axios from 'axios'; const ForgotPassword = () => { const [phone, setPhone] = useState(''); const [errors, setErrors] = useState({phone:''}) const [err_msg, setErrMsg] = useState({status:'', msg:''}) const handleSubmit = (e) => { e.preventDefault(); setErrMsg({status:'', msg:''}); if(!validateForm()) return; const formdata = new FormData(); formdata.append('tel', phone); axios.post('/children/checkTel/', formdata) .then(response => { if(response.data.status_code==200){ setErrMsg({status:'success', msg:"パスワード再設定用URLをSMSで送信しました。
1時間以内にパスワードの再設定を行ってくださ い。"}) } elseif(response.data.status_code == 201) { setErrMsg({status:'success', msg:"子に招待URLの送信に成功しました!"}) } elseif(response.data.status_code == 400) { setErrMsg({status:'error', msg:"電話番号が未登録です。別の電話番号を入力してください。"}) } elseif(response.data.status_code == 401) { setErrMsg({status:'error', msg:"SNSの送信に失敗しました。管理者へお問い合わせください。"}) } elseif(response.data.status_code == 422) { setErrMsg({status:'error', msg:"電話番号が正しくありません。"}) } }) .catch(err=>{setErrMsg({status:'error', msg:'Server Error!'})}) } const validateForm = () => { let errors = {}; let formIsValid = true; if(phone.length == 0){ formIsValid = false; errors['phone'] = 'Required'; } else errors['phone'] = ''; setErrors(errors); return formIsValid; } return (

パスワードを忘れた方

{ err_msg.status.length != 0 &&
{err_msg.msg}
}
setPhone(e.target.value)} autoFocus/> { errors.phone.length != 0 && {errors.phone} }
) } if(document.getElementById('c-forgot-password')){ ReactDOM.render( , document.getElementById('c-forgot-password') ) }