※ 강의를 듣고 제가 이해한 내용을 바탕으로 정리한 것이라서 오류가 있을 수 있습니다.

 

리덕스 미들웨어

리덕스 미들웨어는 리덕스가 지니고 있는 핵심 기능이다. Context API 또는 MobX를 사용하는것과 차별화가 되는 부분이다.

 

리덕스 미들웨어를 사용하면 액션이 디스패치 된 다음 리듀서에서 해당 액션을 받아와서 업데이트하기 전에 추가적인 작업을 할 수 있다.

여기서 언급한 추가적인 작업들은 다음과 같은 것들이 있다.

  • 특정 조건에 따라 액션이 무시되게 만들 수 있다.

  • 액션을 콘솔에 출력하거나, 서버쪽에 로깅을 할 수 있다.

  • 액션이 디스패치 됐을 때 이를 수정해서 리듀서에게 전달되도록 할 수 있다.

  • 특정 액션이 발생했을 때 이에 기반하여 다른 액션이 발생되도록 할 수 있다.

  • 특정 액션이 발생했을 때 특정 자바스크립트 함수를 실행시킬 수 있다.

 

보통 리덕스에서 미들웨어를 사용하는 주된 사용 용도는 비동기 작업을 처리 할 때 이다. 예를 들어 리액트 앱에서 우리가 만약 백엔드 API 를 연동해야 된다면, 리덕스 미들웨어를 사용하여 처리하곤 한다.

리덕스 미들웨어는 누구든지 만들어서 사용 할 수 있다만 일반적으로는 리덕스 미들에웨어 라이브러리를 설치하여 사용한다. 비동기 작업에 관련된 미들웨어 라이브러리는 redux-thunk, redux-saga, redux-observable, redux-promise-middleware 등이 있다.

+ Recent posts