React JS

Objects are not valid as a React child 에러 처리

수연 (Suyeon) 2023. 1. 12. 23:25
반응형

Redux를 사용하다가 해당 에러가 발생해서 해결방안을 기록합니다!

 

📌에러 발생 원인

  • 데이터를 화면에 표시할 때, 컴포넌트로 전달된 데이터 타입표시하려는 데이터 타입이 일치하지 않을 때

 

 

📌오류 찾는 방법

The above error occurred in the <span> component:
  • 라는 오류를 더 찾아볼 수 있습니다. 바로 <span>에서 데이터 타입이 일치하지 않는다는 의미인 것 같습니다.
  • 저는 span에 표시한 데이터를 console.log로 확인해서 어떤 타입이 들어가 있는지 확인했습니다.

 

 

📌오류 해결 방법

  • console.log로 확인해본 결과 아래와 같은 배열이 나왔습니다.
{type: 'login/changeNick', payload: ''}
  • redux를 활용해서 state의 값을 변경하는데 어떤 인자를 받아서 변경할 땐 반드시 payload를 사용해야 하는 것을 까먹은 것입니다.
let login = createSlice({
  name: 'login',
  initialState: { nickname: ''},

  reducers: {
    changeNick(state, nick) {
      //state.nickname = nick; 이렇게 해서 오류가 발생했습니다.
      state.nickname = nick.payload;  //<---- 해결 성공!
    }
  }
});

 

 

📌느낀 점

오류를 처음 접했을 때 해결 방법을 전혀 찾지 못하고 있어서 막막했는데 다시 천천히 살펴보니 해결할 수 있었습니다.

이번에도 또 느꼈습니다. 오류가 발생했을 땐 시간이 오래걸려도 반드시 해결된다는 걸...

728x90

'React JS' 카테고리의 다른 글

react-hook-form로 회원가입 하기  (0) 2023.11.11
npx create-react-app 오류 해결 방법  (0) 2023.11.05
채팅 중복 없이 저장하기  (0) 2023.01.07
채팅창 만들기 React  (0) 2023.01.02
react-live-clock 사용하기  (0) 2023.01.01