To do
- Ranking, FIshBoard 컴포넌트의 오류를 모두 고쳤고 기능도 잘 하는걸 확인했다.
-
어제 머지 오류 났던거 다시 다 고쳐줬다. 말이 오류 고친거지.. 코드를 거의 뜯었다.
특히 페이지네이션 하는거랑 로그인/비로그인나누는거 온갖 경우를 다 생각해줘야해서 어느 세월에 다하냐.. 다 할 수 있을까? 어디서부터 손을 대야할까? 어떻게 각각의 상황마다 렌더링을 다르게 시키지? 하는 막막함이 머릿속을 미칠듯이 지배했었는데 역시 걱정을 없앨때에는 그냥 하는거였다. 어떻게 여차 저차 모두 해결했다. 그리고 자잘한 기능들이라 해야하나 이런것들도 다 처리해줬다. 어제만해도 오류 고치는 두려움이 너무커서 나는 왜이럴까.. 만약에 개발자가 되면 나는 이런 답답함,막막함을 평생 느끼고 살아야하나.. 했었는데 막상 오늘이 되니 해결을 하고있고 안되면 차선책이라도 써서 코드를 짜고 있는 나를 볼 수 있었다. 닥치면 못하는줄 알았었는데 닥치면 하는애구나 싶었던 오늘이었다. -
어제의 고민은 이제 사라졌고 이제 또 오늘의 고민이 생겼다. 사이드바는 어떻게 만들어야할까? Map컴포넌트에서 crud를 할때 사이드바에 렌더링시키고 싶은데 그럼 리덕스를 써야겠지? 리덕스 만드는거 아직 안익숙해서 어려운데.. 사이드바 만드는거 너무 어렵다. 이건 또 css를 못하는 내문제네 하는 등등.. 낼이나 모레쯤 해결될 문제이니 스트레스 받지말자. 나한테 할당된 task들을 감정없이 대하자.
- 서버에서 데이터를 가지고와 컴포넌트에 각각 데이터를 렌더링 시켜주고싶었는데.. 고차함수 map을 이용하면 (주석처리된부분) 렌더링 실패를 했고 오히려 하드코딩을해서 일일히 데이터를 집어넣어주면 렌더링 성공을 볼 수 있었다. 이유가 뭔지 곰곰히 생각해본 바 아마 고차함수를 사용한경우에 데이터가 없을 경우는 undefined처리가 되어 컴포넌트 자체가 생성되지 않기때문이고 하드코딩을 한 부분은 컴포넌트는 기본적으로 생성되어있고 그 안에 데이터가 null로 처리되어있기 때문에 렌더링은 가능한것이 아니었을까하는 생각을 했다. 내 생각이 맞다면 Ranking컴포넌트의 저 부분은 하드코딩을 하는것이 맞지 않을까 한다. 근데 만약 지금은 5개의 데이터만 보내줬지만 100개를 렌더링해야한다면..? 그러면 그때도 하드코딩을 할 수는 없을텐데.. 어떻게해야 할까
<Box>
<div> //🌼 하드코딩하면 성공
<RankingList {...selectedFishData[0]}/>
<RankingList {...selectedFishData[1]}/>
<RankingList {...selectedFishData[2]}/>
<RankingList {...selectedFishData[3]}/>
<RankingList {...selectedFishData[4]}/>
/* {selectedFishData.map((el,idx) => {<RankingList key={idx} {...el}/>} ) } */ 🌼렌더링 실패
</div>
</Box>
- Map컴포넌트 crud 마무리
- 사이드바 생성