분해구조 할당자에 이상한 값이 들어오네요
case types.SET_PHOTO_URL:
return {
...state,
currentUser: { ...state.currentUser, photoURL: action.payload }
}
강의에 나온 코드로 처리를 하면
기존 currentUser스키마가 아닌
_delegate, multifactor가 들어가면서 이상하게 출력됩니다.
그래서 아래와 같이 JSON.parse, JSON.stringify를 통해 처리를 하면 원하는대로 동작을 하게 되는것을 확인했는데 정확한 이유를 모르겠네요
case types.SET_PHOTO_URL:
return {
...state,
currentUser: { ...JSON.parse(JSON.stringify(state.currentUser)), photoURL: action.payload }
}
user_reducer에서
console.log(`before state currentUser: ${JSON.stringify(state.currentUser)}`);
console.log(`before state currentUser2: ${JSON.stringify({ ...state.currentUser }
요렇게 출력했을 때 두 값이 다르게 출력되었습니다.
답변 1
3
안녕하세요 !!!
얘기해주신걸 보고 저도 한번 해봤는데 정말그렇게 되네요 ...
처음에
App.js 에서
user로 받아온 값이 리덕스 스토어에 들어갈때는 필요한 정보만 들어가는데
그걸 ...state.currentUser로 다시 넣을때는 모든 값이 들어가게 되네요 ...
그리고 말씀해주신것처럼 stringfy 와 parse를 해서 넣으면 다시 필요한 값만 들어가게 되네요 !
이거 찾으신거 대단한것 같아요...
현재 저희가 사용하고 있는 값들이 email, displayName, photoURL등이 두군데 모두 들어있어서 에러는 안나지만 ....
몰랑님이 말씀해주신것처럼 바꿔주는게 좋을것같습니다 !
아니면 처음 유저 정보를 리덕스 스토어에 넣을때
setUser에서 이렇게 넣어줘도 될 것 같습니다 !!!
너무나 좋은 정보 올려주셔서 감사합니다.!
ESlint
0
145
1
현 강의자료는 이해는 했는데, 그럼 전 강의자료는 이젠 활용을 못하나요?
0
108
0
배포 후 빈페이지
0
157
1
notification 관련 질문에 AI가 엉뚱하게 대답하여 다시 질문합니다.
0
148
1
notification 관련 부분은 예전 강의를 들어야 하나요?
0
147
1
npm run build시 오류가 있습니다.
0
235
1
이미지 업로드시 403에러가 발생하는데 해결법이 있을까요?
0
813
1
이건 어디에 저장이 되는 것인가요?? redux에 저장이 되는 것인가요??
0
265
1
eslint 질문 있습니다.
0
242
1
npm create react app
0
318
2
[리덕스 미들웨어]강의 중에 createStore에서 막혔습니다.
0
542
3
회원가입 유효성 부분 페이지 안뜨는 이유 좀요....
0
287
1
강의 pdf 파일
0
442
2
파이어베이스 파일 삭제, 사진 업로드 기능 오류
0
338
1
firebase 초기화 오류
0
604
1
mime-types 패키지를 import 할 때 에러 발생
0
285
1
리덕스 스토어에 로그인 유저 정보가 저장이 되지 않는 문제
0
345
1
강의 리뉴얼 일정을 알 수 있을까요?
0
375
1
완성본으로 제공된 코드를 구동시켜보려면
2
413
1
DB와 강의 리뉴얼
0
510
1
next.js 환경에서 이 수업을 들을 수 있나요?
0
398
1
Cannot read properties of undefined (reading 'isLoading') 오류 해결법 혹시 알 수 있을까요...
0
519
1
addChatRoom 함수 작성시
0
283
1
강의 도표 자료 다운을 받으면, zip파일에 아무것도 들어있지않다고 나옵니다.
0
251
1





