useEffect

React

[Redux] 비동기 작업 처리하기(useEffect, thunk)

리덕스 환경에서 비동기 작업을 처리해 보자. 지난번 리덕스 툴킷 실습에서 사용했던 카트 예제를 그대로 사용할 것이다. 기존에 로컬 데이터로 가지고 있었던 카트의 데이터를 서버로 옮기고서 카트에 아이템을 추가하거나 제거해서 업데이트할 때 서버로 데이터를 보내고 처음 페이지를 로딩할 때는 서버에서 데이터를 가져오도록 만들어 보자. 리덕스에서 비동기 작업을 처리하는 법 여기서 카트는 상태로 존재하고, 이 상태를 업데이트하는 함수들은 전부 리듀서 함수다. 리듀서 함수는 순수함수이기 때문에 그 내부에서 사이드이펙트를 처리할 수 없다. 즉, 카트 상태를 서버에서 가져오는 작업을 지금 가진 리듀서 함수 내에 넣어둘 수 없다. 그러면 서버와 통신하는 작업을 처리할 코드를 어디에 둬야 할까? 더 많은 방법이 있지만 일단..

React

[React] useEffect 사용하기

useEffect useEffect는 컴포넌트가 렌더링될 때마다 특정 작업을 수행하도록 설정한다. useEffect를 사이드이펙트를 다루는 훅이라고도 하는데, 사이드이펙트란 컴포넌트의 주요 목적인 화면에 렌더하는 것 이외의 효과를 말한다. 즉, ui를 생성하고 변경하는 것 이외에 애플리케이션에서 벌어지는 모든 변화를 사이드이펙트라고 할 수 있다. 예를 들면 http 요청을 보내거나, 타이머를 설정 및 관리하는 것 등이다. 다음과 같은 경우 useEffect가 유용하다. 1) 마운트/ 언마운트 시에 특정 함수를 실행하고 싶다면 2) 특정 값의 변화에 따라서 어떤 조작을 하고 싶다면 useEffect는 매개변수로 콜백 함수와 그 함수의 의존성을 담은 배열을 받는다. 의존성이란 무엇이 변했을 때 콜백 함수가 ..

JeanneLee57
'useEffect' 태그의 글 목록