강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

김준호님의 프로필 이미지
김준호

작성한 질문수

실전 리액트 프로그래밍

제너레이터 이해하기

질문이 있습니다.

해결된 질문

작성

·

186

0

put, call, take 같은 saga에서 제공하는 함수에는

yield 결과 값을 반환한 후에 미들웨어에서

자동으로 iterator 의 메서드인 next()가 실행하도록 처리하는 건가요?

put 같은 함수 사용 없이 yield만 사용하는 경우에는

다음 next()를 기다려야 중지/실행을 조절할 수 있는데

잘못 이해하고 있는건지 궁금합니다.

답변 1

1

이재승님의 프로필 이미지
이재승
지식공유자

안녕하세요
put, call, take 같은 함수는 단지 (할 일을 설명하는) 객체를 반환할 뿐입니다

그러면 사가 미들웨어가 그 객체가 설명하는 일을 처리합니다
일을 다 처리한 후에 (필요한 경우) yield 의 반환값으로 필요한 값을 넘겨줍니다
next 호출을 통한 중지/실행은 모두 사가 미들웨어가 합니다

김준호님의 프로필 이미지
김준호

작성한 질문수

질문하기