강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của hbjg07115144
hbjg07115144

câu hỏi đã được viết

[Renewal] Tạo NodeBird SNS bằng React

Áp dụng cuộn vô hạn

REQUEST 2번씩 가는 현상

Viết

·

280

0

리듀서에서 등록한 LOAD_POST_REQUEST와

사가에서 이벤트리스너처럼 등록한 watchLoadPosts가 둘 다 LOAD_POST_REQUEST로 묶여있어서 2번 일어나는게 맞나요?

몇 강 전에 리듀서가 사가보다 먼저 발생하는 로그 찍는걸 본 것 같아서요.

리듀서에서는 플래그들 바꾸는 역할을 하고 사가에서는 실질적인 처리를 하는 것으로 이해했는데...

그럼 리듀서와 사가에서 동시에 등록된 액션들은 항상 2개가 실행된다고 생각해도 되나용?

reduxexpressnodejsreactNext.js

Câu trả lời 2

1

zerocho님의 프로필 이미지
zerocho
Người chia sẻ kiến thức

액션은 한 번 실행되는거고요. 액션에 연결된 함수가 각각 리듀서에서 한 번, 사가에서 한 번 일어난다고 이해하시면 됩니다.

0

G General님의 프로필 이미지
G General
Người đặt câu hỏi

아하 액션은 1개지만 연결된 함수들이 1번씩 총 2번


그럼 리덕스 데브 툴즈에서 LOAD_POSTS_REQUEST가 2번씩 일어나는데
첫 번째 LOAD_POSTS_REQUEST의 변경점이 loadPostsLoading이 false에서 true로, loadPostsDone이 true에서 false로 바뀝니다.
두 번째 일어나는 LOAD_POSTS_REQUEST는 항상 첫 번째 일어나는것보다 40~60ms가량 늦게 발생하고, 아무런 변경점이 발생하지 않습니다. 제 생각으로는 사가에서 등록한 대로 delay를 건 다음에 SUCCESS를 디스패치하는 것 같습니다.

그래서 리듀서와 사가에서 등록된 액션에 대한 반응들이 리듀서와 사가 순서대로 일어난다고 이해했는데... 그럼 이 경우 리덕스 데브 툴즈가 찍어주는 LOAD_POSTS_REQUEST는 함수들이 실행될 때 연결된 액션을 로그로 찍어주는 것으로 생각해도 될까요? 로그 찍히는걸로 유추해서 아예 LOAD_POSTS_REQUEST가 2번 실행되는것으로 착각했었네요

zerocho님의 프로필 이미지
zerocho
Người chia sẻ kiến thức

load posts requests가 두번 호출되는건 소스코드에 문제가 있는 겁니다. 확인해보셔야합니다

Hình ảnh hồ sơ của hbjg07115144
hbjg07115144

câu hỏi đã được viết

Đặt câu hỏi