inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

비전공자를 위한 진짜 입문 올인원 개발 부트캠프

react-router-dom 설치하기

React key prop 오류 케이스 나오시는 분들 보세요

1358

promotion

작성한 질문수 13

1

존경하는 그랩님

Warning: Each child in a list should have a unique "key" prop 오류 케이스에 대해서 조언좀 구할 수 있을까요?

 

  1. ReactDOM.render 방식이 React 18에서 지원하지 않으면서 오류들을 수정했습니다.

//[AS-IS]
import ReactDOM from 'react-dom';

ReactDOM.render(
  <React.StrictMode>
    <BrowserRouter>
      <App />
    </BrowserRouter>
  </React.StrictMode>,
  document.getElementById('root')


//[TO-BE]
import * as ReactDOM from 'react-dom/client';

const root = ReactDOM.createRoot(document.getElementById("root"));
root.render(
  <React.StrictMode>
    <App />
  </React.StrictMode>);

 

  1. 다만 아래와 같은 오류들이 발생을 하였는데요.

Screen Shot 2023-02-18 at 4.55.12 PM.png

  1. 구글링에서 찾아보니 각 엘리먼트에 key값을 주는 것으로 해결하라고 하는데요.

    Screen Shot 2023-02-18 at 5.17.32 PM.png- 그렇다면 src > main > index.js 에서 각 엘리먼트들에 key 값을 설정해줘야 하나요?
    - 각 엘리먼트들에 map으로 되어있는 함수를 지우고.. (product, index) 형태를
    key={product.id}>{product.imageUrl}
    key={product.id}>{product.name} 형태로 바꾸어 주어야 하나요?
    - 조금 어렵게 느껴지네요. 해당 부분처럼 바꾸는게 맞는지 조금 조언 부탁드립니다.

    현재 제 깃 레파지토리 참조로 첨부드립니다. 도와주세요 ㅠㅠ
    https://github.com/promotionX/Grabmarket-clinet

html/css react HTML/CSS express node.js react-native tensorflow 머신러닝 javascript 머신러닝 배워볼래요? nodejs

답변 1

1

그랩

안녕하세요 Promotion님 좋은 질문 감사합니다!

1번은 React 버전이 높아지면서 Render 방식이 변경된 것으로 잘 적용해주셨네요. 이 부분은 제가 오늘 새로 촬영해서 강의를 업데이트 해둘 예정입니다. 감사합니다 :)

2번의 경우 해당 로그는 에러는 아닌 Warning이며 [array].map에서 컴포넌트를 리턴할 때 key라는 프로퍼티를 넣어주는 게 좋다는 이야기입니다. 수업 과정에서는 해당 warning이 크게 문제가 되지는 않지만 운영 환경에서나 일반적으로 array의 map을 통해 컴포넌트를 반환할 떄는 key를 넣어주는 게 좋습니다.

일반적으로 key를 넣어준다면 map의 두번째 인자인 index를 많이 넣어주곤 합니다. 따라서 여기 부분을 <div key={index} className="product-card"> 이렇게 수정해주시면 해결됩니다.
https://github.com/promotionX/Grabmarket-clinet/blob/b5f2127b08a3371526c58f1b0079f6f60a3d5513/src/main/index.js#L35

[해결]그랩님 답변 주세요.

0

161

2

그랩님의 답변을 기다립니다/102강 전반적인 에러

0

141

2

[그랩님께]101강 안드로이드 에러들(Key prop)해결방법 궁금합니다.

0

123

2

[재질문][그랩님 답변 부탁드립니다]101강

0

140

2

[그랩님 답변 부탁드립니다]101강 Axios 에러와 502 Bad Gateway 질문

0

97

2

Ngrok 설치 후 forwarding Url 에러

0

133

2

[그랩님께,Ngrok 악성코드 인식 해결방법]질문 드립니다.

0

217

2

Ngrok 설치 후 forwarding Url로 연결 불가

0

135

1

그랩님,[꼭] 답변 부탁드립니다.

0

65

1

[꼭][[꼭] 그랩님, 답변 부탁드립니다], Failed to load resource: the server responded with a status of 404 (Not Found) 상품 상세 페이지 질문입니다.

0

149

1

6강/7강 수업

0

50

1

그랩님, 상품 상세 페이지 에러와 의문점 질문드립니다.

0

98

2

그랩님, 해결되지 않은 에러 메시지 [꼭] 답변 부탁 드립니다.

0

134

2

[재 질문]Cannot read properties of undefined (reading 'map') TypeError: Cannot read properties of undefined (reading 'map') 에러 해결 어떻게 하나요?

0

88

1

Cannot read properties of undefined (reading 'map') TypeError: Cannot read properties of undefined (reading 'map') 에러 해결 어떻게 하나요?

0

127

2

일반적인 css 꾸미기에서 width와 height의 값?

0

90

2

Windows에서의 업로드 후 홈화면 상품이미지 오류 해결방법

0

193

1

그랩마켓 웹화면 구현하기 -2 질문입니다.

0

120

1

react에 반영이 되지 않습니다.

0

236

1

터미널 npm install -g create-react-app 작성 후 오류

0

419

1

create-react-app my app 실행 시 에러

0

354

2

포스트맨 질문

0

100

1

<꼭 답변 부탁 드립니다>그랩선생님, [컴포넌트 사용하기] 강의에서 질문 있습니다.

0

260

2

그랩선생님, 질문 답변 부탁 드립니다.vscode에서 npm install -g create-react-app 입력 후 에러 입니다.

0

473

2