redux-saga

eunsuneun·2022년 2월 18일
0

기본 사용법

sagas 폴더 안의 index.js

import { all, fork, take } from 'redux-saga/effects';

function* watchLogIn() {
  yield take('LOG_IN');
}
function* watchLogOut() {
  yield take('LOG_OUT');
}
function* watchAddPost() {
  yield take('ADD_POST');
}

export default function* rootSaga() {
  yield all ([
    fork(watchLogIn),
    fork(watchLogOut),
    fork(watchAddPost),
  ])
}

redux saga effects

all : 배열을 받음. 배열안의 것들을 한방에 실행함.
fork : 동기 함수 호출
call : 비동기 함수 호출
takeEvery : take는 기본적으로만 한 번만 실행되고 사라지는데, takeEvenry는 while(true){}안에 있는 것처럼 계속 실행 가능하다.
takeLatest : (takeEvery기능을 하면서)마우스 연속으로 눌렀을 때 마지막 것만 프론트에 반영. 서버에는 전부 전송되므로 서버에서 검증 처리가 필요하다.
throttle : 지정한 몇 초 이내 연속적인 요청은 서버에도 프론트에도 요청안됨.

profile
뇌장하드 🤯

0개의 댓글