Redux DevTools 에서 anonymous가 두 번씩 찍혀요
안녕하세요 강의 잘 듣고 있습니다!
다름이 아니고 (3.5) Zustand 미들웨어 2 강의를 들으며 실습 중, 알려주신 Redux DevTools 설치 이후 강의와 같이 한번 클릭하여도 anonymous가 두 번씩 찍혀서 노출되는데 제가 다시 확인해봐야 할 부분이 있을까요? 감사합니다.

답변 2
1
안녕하세요 이정환입니다.
아마 높은 확률로 main.tsx 파일의 StrictMode를 제거하시지 않아 발생하는 문제가 아닐까 싶습니다. 아래 AI 인턴이 답변해준대로 React의 StrictMode가 활성화되어 있는 경우 컴포넌트가 두 번씩 렌더링될 수 있습니다. 한번 확인해보신 뒤 회신 부탁드립니다.
0
강사님 안녕하세요!
진도를 나가다 보니 질문 올렸던 내용을 깜빡해서, 지금에서야 알려주신 방법을 확인해보았습니다.
우선 main.tsx에 <React.StrictMode>가 없는 상태라 StrictMode 영향은 아니었고,
카운터에서 사용하는 컴포넌트 2개(viewer.tsx, controller.tsx)에 console.log로 렌더링을 확인해보니 +/- 동작 시 viewer.tsx만 리렌더되는 것을 확인했습니다(동작 정상).
무엇이 문제일까 하여 chatgpt 와 함께 store/count.ts를 다시 살펴보는 과정에서 아래 코드가 원인이 될 수 있다는 피드백을 받아,
useCountStore.subscribe(
(store) => store.count,
(count, prevCount) => {
// 두번째 인자, Listener
console.log(count, prevCount);
// 가져오는법
const store = useCountStore.getState();
// 설정하는법
useCountStore.setState((store) => ({}));
},
);subscribe 콜백 내부의 setState가 실제 변경이 없더라도 DevTools 상에서는 추가 액션으로 기록될 수 있다고 하여 해당 setState를 주석 처리했더니
Redux DevTools에서 액션이 한 번만 찍히는 것을 확인했습니다.
그리고 AI인턴 답변만으로는 StrictMode를 어디서 확인하는지 몰랐는데 main.tsx라고 정확히 짚어주셔서 빠르게 확인할 수 있었습니다. 친절한 설명 감사합니다!
새해 복 많이 받으세요!
0
안녕하세요, 인프런 AI 인턴입니다. 뚜루뚜루님.
Redux DevTools 사용 중에 액션이 두 번씩 “anonymous”로 찍히는 문제는 다양한 원인이 있을 수 있습니다. 기본적으로 Redux DevTools의 작동 방식이나 설정에서 비롯될 수 있습니다.
StrictMode 확인: React의
StrictMode가 활성화되어 있는 경우 컴포넌트가 두 번씩 렌더링될 수 있습니다. 이로 인해 DevTools에서도 두 번 찍히는 현상이 발생할 수 있으며, 개발 중 로그를 계속 지켜보시려면StrictMode를 임시로 비활성화하는 것도 고려해볼 수 있습니다.devtools 미들웨어 설정:
zustand라이브러리를 사용하면서devtools기능을 설정하는 과정에서 발생할 수 있습니다. 확인하셔야 할 부분은 액션의 이름을 명시적으로 지정하고 있는지입니다.
set({session, isLoaded: true}, false, 'setSession');
위와 같이 액션명을 명시적으로 설정하면, “anonymous” 대신 정의한 액션명이 나타나게 됩니다.
- 배포 버전 확인: 간혹 개발 환경과 배포 환경의 차이로 인해 이러한 문제가 발생할 수도 있습니다. 개발 모드에서만 발생하는 것인지 확인해보세요.
추가적으로, 유사한 문제를 겪고 있는 경우 아래의 게시글을 참고해 보세요. 여기서는 zustand에서 devtools 사용 시 액션명이 “anonymous”로 나오는 경우를 다루고 있습니다:
- zustand 강의에서 devtools 미들웨어에 대한 질문입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
회원가입 구현 (구현 후 최종 화면 출력 X)
0
40
2
(6.11) 회원가입시 프로필 정보 자동 생성하기 Q. 호출 순서 문의
0
36
1
명시적 타입 선언(콜론 타입 선언)과 as 타입 단언 차이
0
37
2
useMutation 적용 후 새로운 글 등록시 content가 안보여요
0
48
2
6.8 zustand 세션 질문입니다.
0
92
2
next.js 강의에서도 리액트 라이브러리들을 다뤄주시나요?
0
79
2
shadcn에서 radix ui와 base ui 차이는 뭔가요?
1
319
2
updateTodo 함수 생성시 화살표 함수 사용 안하는 이유
0
75
2
4.11 바로 투두 삭제가 안됨 질문
0
85
3
인증 정보가 만료되었을 때 라우트 가드 처리가 궁금합니다!
0
78
2
supabase를 사용하지 않을 경우 세션 데이터의 변경을 감지하고 스토어에 보관하는 방법이 궁금합니다!
0
69
2
4.6 id를 string으로 변경시 오류
0
64
2
리액트 타입스크립트 관련 질문있습니다.
0
62
1
소셜 로그인 구현하기 관련하여 질문이 있습니다!
0
98
2
ui 파일 질문드립니다.
0
76
1
tanstack query devtools에서 질문있습니다!
0
66
2
댓글 삭제 시 isPending 질문
0
64
2
두번째 예외상황에 대해 질문있습니다!
0
65
1
리액트 쿼리 질문입니다
1
72
2
개발자도구에서 components 가 안보입니다.
0
94
3
state 관리에 대한 정리
0
79
3
[(2.4) Shadcn/ui를 소개합니다] 강의 Shadcn 세팅 관련 질문 있습니다.
0
176
3
like 테이블에서 왜 create_at이 필요한지 궁금합니다.
0
78
1
삭제가 바로 안되네요ㅠ
0
65
2





