55555-Jyeon / Boilerplate

personal boilerplate
0 stars 0 forks source link

[2024.01.10] TypeError : useInfiniteQuery μ‹œλ„ 쀑 ... #6

Closed 55555-Jyeon closed 10 months ago

55555-Jyeon commented 10 months ago

πŸ”΄ useInfiniteQuery μ μš©ν•˜λ©΄μ„œ λ‹€μ–‘ν•œ type error λ§Œλ‚˜λŠ” 쀑

useQuery μ—μ„œ useInfiniteQuery 둜 λ°”κΎΈλŠ” κ³Όμ •μ—μ„œ pageParam을 μΆ”κ°€ν–ˆλŠ”λ°..

Screenshot 2024-01-10 at 9 18 11β€―PM

{ pageParam = 1 } πŸ‘‰ 이 뢀뢄이 λ¬Έμ œμΈκ°€ 싢은데, 이 λΆ€λΆ„ μΆ”κ°€ν•  λ•Œ μ—λŸ¬κ°€ λ°œμƒ, μ–΄λ–»κ²Œ μˆ˜μ •μ„ ν•΄ λ‚˜κ°€μ•Ό 할지 고민이닀.

μ•„λž˜λŠ” postList && 적용 돼 μžˆλŠ”λ°λ„ μ΄λž˜μ„œ 뭐 λ•Œλ¬ΈμΈμ§€.. πŸ‘€

Screenshot 2024-01-10 at 9 06 48β€―PM

일단 console.log( ) μ€„λ§ˆλ‹€ μ°μ–΄λ³΄λ©΄μ„œ 디버깅 ν•΄λ³΄λŠ” 수 밖에 없지..! πŸ₯²

55555-Jyeon commented 10 months ago

디버깅 ν›„ 문제됐던 μ½”λ“œλ“€ μ‘°κΈˆμ”© μˆ˜μ •ν•΄μ„œ console.log()에 λ“œλ””μ–΄ page의 값이 μ°ν˜”λ‹€.

Screenshot 2024-01-10 at 9 17 05β€―PM

근데... ? πŸ‘€

Screenshot 2024-01-10 at 9 21 54β€―PM

page도 post도 λ‘˜ λ‹€ 잘 μ°νžˆλŠ”λ° μ™œ... ? πŸ‘€

Screenshot 2024-01-10 at 9 26 27β€―PM
55555-Jyeon commented 10 months ago
Screenshot 2024-01-10 at 9 29 23β€―PM

post[0].User.nickName ➑️ μ—λŸ¬λ„ λ Œλ”λ„ μ•ˆ 됨 post.User.nickName ➑️ TypeError: Cannot read properties of undefined (reading 'nickName') User.nickName ➑️ User is not defined

Screenshot 2024-01-10 at 9 28 52β€―PM

μ™œ μ—λŸ¬λ„ μ—†κ³  μ»΄ν¬λ„ŒνŠΈλ„ μ—†μ–΄... πŸ₯² λ‘˜ 쀑 ν•˜λ‚œ λ„μ›Œμ€˜μ•Όμ§€..

55555-Jyeon commented 10 months ago

🟒 solved

post 도 잘 λœ¨λŠ”λ° map을 ν•˜κ³  μžˆλŠ” onePost λ₯Ό μ§€μš°κ³  <div>{post.User.nickName}</div> 을 해봐도 아무 것도 μ•ˆ λ– μ„œ μ˜μ•„ν•΄ν•˜λ˜ 쀑 도움을 λ°›μ•„ μ‰½κ²Œ ν•΄κ²°ν•  수 μžˆμ—ˆλ‹€.

두 가지 λ•Œλ¬Έμ— ν™”λ©΄ λ Œλ”κ°€ λ˜μ§€ μ•Šμ•˜λ‹€ :

  1. post 의 값이 { ...1} { ...2} { ...3} 또 λ°°μ—΄μ΄μ—ˆλ˜ 것
  2. pages λ₯Ό map ν•˜λŠ” 뢀뢄에 return이 μ—†μ—ˆλ˜ 것

일반적으둜 μ²˜μŒμ— λ‚΄κ°€ μž‘μ„±ν•œλŒ€λ‘œ pages > post > onePost μˆœμ„œκ°€ 맞긴 ν•œλ°, mswμ—μ„œ 데이터λ₯Ό κ°€μ Έμ˜€λ©΄μ„œ λ¬Έμ œκ°€ μžˆμ—ˆλ˜ 건지 post도 map을 ν•΄μ€˜μ•Ό ν•˜λŠ” ν˜•νƒœμ˜€μ–΄μ„œ post도 ν•œ 번 더 map을 ν•΄μ£Όλ‹ˆ 잘 λ–΄λ‹€.

그리고 μ²˜μŒμ— post > onePost만 map ν•΄μ£Όλ‹€κ°€ λ¬΄ν•œ μŠ€ν¬λ‘€μ„ μ μš©ν•˜λ©΄μ„œ pages도 map을 μ μš©ν•˜λŠ” λ“± 점점 κΉŠμ–΄μ§€λ©΄μ„œ μ½”λ“œλ₯Ό μˆ˜μ •ν•¨μ— 따라 return λ¬Έ μž‘μ„±μ„ λΉΌλ¨Ήμ—ˆλ‹€.

μ „λΆ€ κ³ μ³μ£Όλ‹ˆ 화면에 μ •μƒμ μœΌλ‘œ λ Œλ”λ˜μ—ˆλ‹€!

Screenshot 2024-01-10 at 10 40 14β€―PM

μ†Œκ΄„ν˜Έλ‘œ κ°μ‹Έκ²Œ 될 경우 return 문이 μƒλž΅λ˜λŠ” κ²ƒμž„μ„ μžŠμ§€ 말자!