250x250
반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- threejs
- chatGPT
- PM2
- 오블완
- 블록체인
- metamask
- Ai
- nginx
- Kaikas
- Setting
- Remix
- exceljs
- jquery
- nodejs
- React
- pagination
- node
- 배포
- netfunnel
- 라라벨
- Laravel
- CSS
- NextJS
- polygon
- nft
- miniconda
- 티스토리챌린지
- 공연티켓
- 회고
- Python
Archives
- Today
- Total
박주니 개발 정리
A component is changing an uncontrolled input to be controlled. warnning 해결 방법 본문
react
A component is changing an uncontrolled input to be controlled. warnning 해결 방법
박주니 2023. 2. 13. 17:29728x90
반응형
해결 방법
const [adminInfo, setAdminInfo] = useState("");
useEffect(() => {
setAdminInfo(
{name: "user"}
)
}, [])
<input
defaultValue={adminInfo.name || ""}
/>
React default value를 사용하는 이유는 다음과 같습니다.
- 기본값 설정: 만약, 사용자가 입력하지 않았을 경우, 특정 기본값을 표시하기 위해서입니다.
- 초기 폼 상태 설정: 폼을 처음 렌더링할 때, 특정 초기 값을 가지도록 설정하기 위해서입니다.
- 초기 데이터 상태 설정: API를 통해 받은 데이터를 표시할 때, 그 데이터를 기반으로 폼의 초기 상태를 설정하기 위해서입니다.
- 기존 데이터 로딩: 기존에 저장된 데이터를 불러와 폼에 표시할 때, 그 데이터를 기반으로 폼의 초기 상태를 설정하기 위해서입니다.
이와 같은 이유로, React default value는 폼의 초기 상태를 설정하는데 매우 유용한 기능입니다.
다른 방식으로 적용하는 방법 (추천하지는 않음)
useEffect(() => {
document.getElementById("title").value = "hi"
}, [])
<input
id = "title"
/>
추천하지 않은 이유) react를 사용할 때에는 최대한 useState를 활용하는 것이 최적화하는 방식입니다. 순수 자바스크립트로 코드를 구현하다보면 react를 제대로 활용한다고 볼 수 없기 때문에 참고만 해주시면 감사하겠습니다.
728x90
반응형
Comments