반응형
import { useRef, useState } from "react";
import "./styles.css";
export default function App() {
const [image, setImage] = useState(null);
const inputRef = useRef(null);
const 이미지넣기 = () => {
if (!inputRef.current) return;
inputRef.current.click();
};
const 이미지변경됐을때_실제스테이트에_넣는함수 = ({ target: { files } }) => {
setImage(files[0]);
};
const 전송해보자 = () => {
const formData = new FormData();
formData.append("image", image);
for (let [key, value] of formData.entries()) {
console.log(key, value);
}
};
return (
<div className="App">
<div className="dropzone">
{image ? (
<img src={URL.createObjectURL(image)} alt="test" />
) : (
<h1 className="pointer" onClick={이미지넣기}>
이미지없으니까 여기 눌러라
</h1>
)}
<input
ref={inputRef}
type="file"
hidden
accept="image/*"
onChange={이미지변경됐을때_실제스테이트에_넣는함수}
/>
</div>
<h2>Start editing to see some magic happen!</h2>
<button onClick={전송해보자}>전송해보자!!!!!!</button>
</div>
);
}
Resources
윤국멘토님💻
반응형
'Learning Log > React' 카테고리의 다른 글
[react] react datepicker 커스텀하기 (2) | 2023.06.19 |
---|---|
[react] react-redux 사용하기 (0) | 2023.03.22 |
[react] react carousel library 사용해서 구현하기 (0) | 2023.03.05 |
[react] Link 컴포넌트에 style 주기 (0) | 2023.03.02 |
[react] 비밀번호와 비밀번호 확인 value 검사하기(feat. useState는 언제 사용하는가) (0) | 2023.02.22 |