[React] useEffect에서 async/await 사용하는 방법
글 작성자: 망고좋아
반응형
🎯 useEffect에서 async/await 사용하는 방법
- useEffect 내에서 비동기 처리를 해주려고 async/await을 사용하려고 했는데 오류가 발생했다.
- Effect callbacks are synchronous to prevent race conditions. Put the async function inside: ..
useEffect는 아무것도 반환하지 않거나 clean up 함수를 반환해야 한다.
useEffect(() => {
async function fetchData() {
const respons = await fetch("http://localhost:3333/topics/" + id);
const result = await respons.json();
console.log(result);
setTitle(result.title);
setBody(result.body);
}
fetchData();
}, []);
- 따라서 useEffect 내에서 async/await를 사용하고 싶다면 함수로 만들어서 사용하면 된다.
async function fetchData() {
const respons = await fetch("http://localhost:3333/topics/" + id);
const result = await respons.json();
console.log(result);
setTitle(result.title);
setBody(result.body);
}
useEffect(() => {
fetchData();
}, []);
- 이렇게 함수 밖으로 빼고 useEffect 내에서 호출해도 된다.
📌 참고
반응형
'프로그래밍 > React' 카테고리의 다른 글
[styled-components] 초기 CSS 세팅하기(GlobalStyles, styled-reset, ThemeProvider) (0) | 2022.02.08 |
---|---|
[React] Debounce와 Throttle이란? (0) | 2022.01.25 |
[React] 리액트 앱 배포 프로세스 (0) | 2022.01.19 |
[React] 리액트로 SSR 구현하기 (0) | 2022.01.19 |
[React] React 테스팅 (0) | 2022.01.17 |
댓글
이 글 공유하기
다른 글
-
[styled-components] 초기 CSS 세팅하기(GlobalStyles, styled-reset, ThemeProvider)
[styled-components] 초기 CSS 세팅하기(GlobalStyles, styled-reset, ThemeProvider)
2022.02.08 -
[React] Debounce와 Throttle이란?
[React] Debounce와 Throttle이란?
2022.01.25 -
[React] 리액트 앱 배포 프로세스
[React] 리액트 앱 배포 프로세스
2022.01.19 -
[React] 리액트로 SSR 구현하기
[React] 리액트로 SSR 구현하기
2022.01.19