[React] 리액트 3주차 심화 - 개인 과제(Thunk, Promise, TDZ)

Chaewon Yoon (Jamie)·2022년 9월 1일
0

inovation camp for frontend

목록 보기
23/30

🔐 리덕스에서 미들웨어 청크의 역할은 뭘까요?
(Redux Thunk_middleware)
redux-thunk는 리덕스에서 비동기 작업을 처리 할 때 가장 많이 사용하는 미들웨어.

(미들웨어란? 액션이 dispatch 되어서 reducer에서 이를 처리하기 전에 사전에 지정된 작업들을 하는 중간자
예를 들어 전달받은 액션을 콘솔에 찍는다든지, 전달받은 액션에 기반해 다른 종류의 액션을 추가적으로 dispatch하든지...)

(비동기 작업이란?
서버에게 데이터를 요청한 후 요청에 따른 응답을 계속 기다리지 않아도되며 다른 외부 활동을 수행하여도되고 서버에게 다른 요청사항을 보내도 상관없습니다
(Reference https://velog.io/@slobber/%EB%8F%99%EA%B8%B0%EC%99%80-%EB%B9%84%EB%8F%99%EA%B8%B0%EC%9D%98-%EC%B0%A8%EC%9D%B4)

🔐 프로미스는 정확히 말하면 비동기가 아닙니다. 비동기와 프로미스는 각각 무엇일까요?
Promise 는 비동기 작업의 단위
Promise는 세 가지 상태를 지닙니다. 바로 대기(pending), 이행(fulfilled), 거부(rejected) 이며 이행 상태일 때 then, 거부 상태일 때 catch 로 등록한 동작들이 실행됩니다.
Promise 를 만드는 순간 비동기 작업이 시작되며, 비동기 작업을 성공으로 간주하고 싶을 때 resolve를 호출하고, 실패라 간주하고 싶다면 reject 함수를 호출합니다. 이 비동기 작업이 성공했을 때 후속 조치를 지정하고 싶다면 then으로, 실패 시의 후속 조치는 catch 로 지정하는 것까지 함께 살펴보았습니다.
async: 비동기 작업을 만드는 손쉬운 방법

(Reference) https://elvanov.com/2597

🔐 TDZ(Temporal Dead Zone/일시적 사각지대)란?

TDZ
"Temporal Dead Zone"
변수 선언 전에 접근할 수 없는 것

profile
keep growing as a web developer!🧃

0개의 댓글