내일배움캠프 4기 스파르타코딩 React B반
📒 오늘의 공부
1. React App Project_4
- 어제 수정 부분 input창 다시 사라지게 하는 것 오늘 아침에 갑자기 setTimout이 생각났다.
dispatch로 값을 넘겨주고 setTimeout으로 input창 사라지게 하는(display:block)걸 실행하면 되지 않을까 했는데
팀원이 새벽에 displayBlock, none으로 성공했다고 알려줬다.
알게 된 것
- extra reducer에서 state.comment로 하면
useSelector에서 const {comment} = useSelector((state)=>state.comments)
- reducer에서 state.comments로 하면 `
const {comments} =
로!
문제 및 해결
- 기능 구현 다 한 것 dev에 병합하고 하나씩 확인하는데
댓글이나 포스트를 삭제하면 유저 db도 같이 사라진다...
- json server의 고질적인 문제: id라는 키 값이 여러개이면 안 됨!
- 팀원이 해결!!
-> uid = user 로 바꾸는 등 다 바꾸고 나니 해결!
CSS 기본 틀 잡기 + custombutton
- 와이어프레임대로 일단 해 봄!
- 조금 수정 하다가 댓글 등록 다시 수정
시도 및 해결
- 댓글 한 번만 등록할 수 있게 하기
- 댓글 한 번 더 남기려고 하면 alert 뜨게 하기
("이미 댓글을 남기셨습니다.")
-> user의 id와 댓글의 user(userid)를 비교하기
-> 댓글에 유저가 남긴 댓글이 있는지 찾고 있으면 alert
아니라면 dispatch실행(이 안에는 if문으로 댓글, 카테고리 선택 안 했으면 alert)
- 코멘트 data를 불러오고 현재 post의 id가 똑같은 댓글들만 filter로 거르고 그 안에서 현재 유저의 id와 같은 댓글을 찾기
- 댓글, 카테고리선택, 현재유저의 댓글이 없는 상태가 모두 충족되면 dispatch실행
- 유저 댓글이 있으면 alert
문제
- 유저 댓글이 있으면 댓글을 입력해도 댓글 등록 버튼 눌렀을 때 "이미 댓글을 등록했습니다"라고 뜨고 댓글 등록이 안 됨
- 댓글을 삭제하고 다시 달아도 카테고리 선택이 되어 있는데 카테고리 선택을 하라고 뜨고 댓글이 안 달림
시도
- if/else로 크게 둘로 나누기(유저 댓글이 있을 때 없을 때)
- else(유저 댓글이 없을때 - 댓글을 달 수 있게 중첩 if문 쓰기)
- 댓글이 없을 때 댓글 등록을 누르면 카테고리 선택 되어 있어도 카테고리를 선택하라는 문구가 뜨다가 계속 시도하면 갑자기 댓글이 잘 달림..
해결
- if, else문 형태 문제가 아니었음
- 카테고리를 확인하는 변수를 등록버튼 안에 넣어놨다가 밖으로 빼서 그랬던 것...