3시간동안봤는데 찾질 못했습니다 ㅠㅠ
246
작성한 질문수 25
4셉터 마지막 팔로우 부분 질문입니다.
팔로우 버튼 클릭시 모든 글 들이 로딩중 표시가 뜨구요 제가 sagas followrequest type 에서 action.data를 console로 받아본 결과 제가 클릭한 post id값이 들어오긴하는데 그 값이 계속 무한루프로 들어와요 리덕스 diff 값은 FOLLOW_REQUEST 만 계속 도는 에러입니다.
버튼 클릭과 동시에 모든 글의 버튼에서 로딩중 표시가 뜬다는건 followButton.js onclick 부분이 잘못되나 싶다가도
클릭한 해당 글의 id값은 잘들어오는데 똑같은 값이 무한루프로 해당 액션 type에 값이 들어오는경우는 도대체 뭔지모르겠네요ㅠㅠ..
FollowButton.js, reduce user.js saga user.js 파일 해당 관련 로직 올려 드리겠습니다. ㅠㅠ
const FollowButton = ({ post }) => {
const dispatch = useDispatch();
const { me, followLoading, unfollowLoading } = useSelector((state) => state.user);
const isFollowing = me?.Followings.find((v) => v.id === post.User.id);
const onClickButton = useCallback(() => {
if (isFollowing) {
dispatch({
type: UNFOLLOW_REQUEST,
data: post.User.id,
});
} else {
dispatch({
type: FOLLOW_REQUEST,
data: post.User.id,
});
}
}, [isFollowing]);
return (
<Button loading={followLoading || unfollowLoading} onClick={onClickButton}>
{isFollowing ? '언팔로우' : '팔로우'}
</Button>
);
};
case FOLLOW_REQUEST : // 팔로우 요청
draft.followLoading = true;
draft.followError = null;
draft.followDone = false;
break;
case FOLLOW_SUCCESS : //팔로우 성공
draft.followLoading = false;
draft.followDone = true;
draft.me.Followings.push({ id: action.data });
break;
case FOLLOW_FAILURE : //팔로우 실패
draft.followLoading = false;
draft.followError = action.error; //로그인 실패 확인
break;
function* follow(action) {
try {
yield delay(1000);
//const reuslt = yield call(followAPI, action.data);
yield put({
type: FOLLOW_SUCCESS,
data : action.data,
});
} catch (e) {
console.log(e);
yield put({
type: FOLLOW_FAILURE,
data: e.response.data,
});
}
}
답변 1
0
일단 모든 팔로우 버튼이 로딩창이 뜨는 것은 안타깝게도 현재 구조상 어쩔 수 없는 부분입니다. 이 부분이 문제는 아니고요. FOLLOW_REQUEST가 무한하게 나오는 것 같은데 리덕스 데브툴즈 상에서도 FOLLOW_REQUEST만 있나요?
const FOLLOW_SUCCESS = 'FOLLOW_REQUEST'로 적지는 않으셨나요?
0
그러네요... FOLLOW_SUCCESS 가 quest로 되어있어서 Succes로 넘어갈떄 request계속 돌았네요............하... 거진 2~3시간동안 못찾았는데 이걸 생각못했네영... 감사합니당.
넥스트 버젼 질문
0
90
2
로그인시 401 Unauthorized 오류가 뜹니다
0
104
1
무한 스크롤 중 스크롤 튐 현상
0
192
1
특정 페이지 접근을 막고 싶을 때
0
116
2
createGlobalStyle의 위치와 영향범위
0
102
2
인라인 스타일 리렌더링 관련
0
97
2
vsc 에서 npm init 설치시 오류
0
157
2
nextjs 15버전 사용 가능할까요?
0
166
1
화면 새로고침 문의
0
129
1
RTK에서 draft, state 차이가 있나요?
0
160
2
Next 14 사용해도 될까요?
0
455
1
next, node 버전 / 폴더 구조 질문 드립니다.
0
359
1
url 오류 질문있습니다
0
214
1
ssh xxxxx로 우분투에 들어가려니까 port 22: Connection timed out
0
391
1
sudo certbot --nginx 에러
0
1293
2
Minified React error 콘솔에러 (hydrate)
0
477
1
카카오 공유했을 때 이전에 작성했던 글이 나오는 버그
0
255
1
프론트서버 배포 후 EADDRINUSE에러 발생
0
337
1
npm run build 에러
0
525
1
front 서버 npm run build 중에 발생한 에러들
0
398
1
서버 실행하고 브라우저로 들어갔을때 404에러
0
350
2
css 서버사이드 랜더링이 적용되지 않아서 문의 드립니다.
0
290
1
팔로워 3명씩 불러오고 데이터 합쳐주는걸로 바꾸고 서버요청을 무한으로하고있습니다.
0
249
2
해시태그 검색에서 throttle에 관해 질문있습니다.
0
206
1





