[리액트] 미들웨어

미들웨어란?

  • 액션을 디스패치했을 때 리듀서에서 이를 처리하기 전에 어떠한 작업을 실행할 수 있게 해줌
  • 액션과 리듀서 사이의 중간자 역할
  • dispatch 메서드로 store로 가고있는 액션을 가로챔

대표적인 라이브러리 Redux-thunk

  • 리덕스 미들웨어에서 가장 대표적인 라이브러리
const getReviewDB = (id) => {
  return function (dispatch, getState, { history }) {
    instance.get(`/hospitals/${id}/reviews`).then((result) => {
      dispatch(getReview(result.data));
    });
  };
};
  • thunk는 매개변수를 받고 다른 함수를 return하는 함수
  • 내부 함수에서 dispatch와 getState를 사용 가능(Redux-Thunk 미들웨어에서 제공받는 함수)
  • getState로 store에 저장된 상태값을 불러올 수 있음

좋은 웹페이지 즐겨찾기