import React, { useEffect, useState } from 'react'; import { useHistory, Link } from 'react-router-dom'; import IconButton from "@material-ui/core/IconButton"; import axios from 'axios'; import { CircularProgress } from '@material-ui/core'; import PhotoCameraOutlinedIcon from '@mui/icons-material/PhotoCameraOutlined'; import Alert from '../../component/alert'; import Notification from '../notification'; const Profile = () => { const [notice, setNotice] = useState(localStorage.getItem('notice')); const [image, setImage] = useState(''); const [profile, setProfile] = useState({email:'', tel:'', first_name:'', last_name:'', identity:'', company:'', image:''}) const [loaded, setLoaded] = useState(false); const [_400error, set400Error] = useState(''); const [_422errors, set422Errors] = useState({ image: '' }); const [_success_update_image, setSuccessUpdateImage] = useState(''); useEffect(() => { setLoaded(false); let child_id = document.getElementById('child_id').value; axios.get('/api/children/detail/'+child_id) .then(response => { setLoaded(true); setNotice(response.data.notice); if(response.data.status_code==200){ setProfile(response.data.params); setImage(response.data.params.image); } }) },[]); const handleLogout = () => { axios.get('/c-account/logout') .then(() => location.href = '/c-account/login') } const handleImageChange = (e) => { e.preventDefault(); set422Errors({image: ''}); let reader = new FileReader(); let _file = e.target.files[0]; reader.readAsDataURL(_file); reader.onloadend = () => { axios.put(`/api/children/updateImage/${document.getElementById('child_id').value}`, {image: reader.result}) .then(response => { setNotice(response.data.notice); switch(response.data.status_code){ case 200: { // setImage(reader.result); setSuccessUpdateImage(response.data.success_messages); window.location.reload(true); break; } case 400: set400Error(response.data.error_messages); break; case 422: set422Errors(response.data.error_messages); break; } }); }; }; return (

プロフィール

{ !loaded && } { loaded &&
handleImageChange(e)}/>
avatar-img
{ _422errors.image && {_422errors.image} }

{`${profile.first_name} ${profile.last_name}`}

person

{profile.identity}

会社名

{profile.company ? profile.company: '-'}

プロフィールを変更する
パスワードを変更する
退会する
} { _400error && set400Error('')}>{_400error} } { _success_update_image && setSuccessUpdateImage('')}> {_success_update_image} }
) } export default Profile;