import React, { useState } from 'react'; import ReactDOM from 'react-dom'; import Menu from '../Components/Menu'; import { Image, Button, Container, Form, FormControl, Navbar, Nav } from 'react-bootstrap'; import { BrowserRouter as Router, Route, Redirect, Switch, Link } from 'react-router-dom'; import axios from 'axios' import userdefault from './KakaoTalk_20201230_153151693.png' //localStorage에 아이디? 가있는걸로 db에서 그 사람꺼 찾은(findOne 이런걸로) 다음에 닉네임도 불러오고 여기서 수정할 수 있는 기능을 만들자! //////////////////////////////////////////////////////////////////////////////// // async function sending() { // const info = await fetch(`/api/users/signup`, { // method: "POST", // headers: { // "Content-type": 'application/json' // }, // body: JSON.stringify({ // name: userName, // email: userEmail, // password: "123123123", // nickname: userNickname // }) // }) // const data = await info.json() // console.log(data) // } //////////////////////////////////////////////////////////////////////////////// const INIT_USER = { name: '', email: '', nickname: '' } function ProfilePage() { const [user, setUser] = useState(INIT_USER) const [defaultImg, setDefaultImg] = useState(true) const [hidden, setHidden] = useState(true) function setlocal() { localStorage.setItem('_id', '5ff77d56da609732c001b392') } async function loginedinfo() { const userid = localStorage.getItem('_id') const response = await axios.post(`/api/users/${userid}`, user) setUser(response.data[1]) console.log(user) } async function getInfo() { //db에서 로그인 정보 가져옴 const response = await axios.get('/api/users') console.log(response.data) setUser(response.data[1]) console.log(user) } async function makeLogin() { //로그인 상태로 만들어줌 const info = await axios.get('/api/users') console.log('info', info.data) setUser(info.data[1]) await axios.post(`/api/users/`, user) localStorage.setItem('loginStatus', 'true') localStorage.setItem('_id', user._id) console.log(user) } async function authinfo() { //id로 db에서 찾아오기 const userid = { '_id': localStorage.getItem('_id') } const response = await axios.post(`/api/users/${userid._id}`, userid) console.log(response.data) setUser(response.data) } //@@그다음에 찾아온걸로 다시 띄우기 //@@닉네임 수정하기 function handleEditnick() { if (hidden) { setHidden(false) } else { setUser({ ...user, 'nickname': document.getElementById("inputNick").value }) setHidden(true) } } async function handleNicksave(){ const userid = { '_id': localStorage.getItem('_id') } await axios.put(`/api/users/${userid._id}`, user) } function setThumbnail(event) { //불러온 사진
에 띄우기 let reader = new FileReader(); reader.onload = function (event) { let img = document.createElement("img"); img.setAttribute("src", event.target.result); img.setAttribute("id", "profileImg") img.setAttribute("style", 'height:300px; width:300px') img.setAttribute("class", "mb-3") // img.setAttribute("class","d-flex justify-content-center mb-3") document.querySelector("div#image_container").appendChild(img); }; reader.readAsDataURL(event.target.files[0]); if (defaultImg) { //첫 이미지 업로드(default이미지 지우고 유저가 올린걸로 업로드) let del = document.getElementById("defaultImg") del.remove() setDefaultImg(false) } else { //기존에 올렸던 사진 지우고 재선택한 사진 업로드 let del2 = document.getElementById('profileImg') del2.remove() reader.onload = function (event) { let img = document.createElement("img"); img.setAttribute("src", event.target.result); img.setAttribute("id", "profileImg") img.setAttribute("style", 'height:300px; width:300px') document.querySelector("div#image_container").appendChild(img); }; } } return (
{/* */}

Profile Page

{user.name}님 환영합니다 !

이름 : {user.name}
별명 :
이메일 : {user.email}
) } export default ProfilePage