오늘 한 일
프로젝트 댓글 수정, 삭제 기능 구현 완료
배운점 및 느낀 점
오늘 댓글 수정, 삭제 기능을 구현하는데 있어서 삭제기능은 삭제 버튼을 눌렀을 때 단순히 삭제 api가 호출 되면 되므로 구현하는데 어려움은 없지만 수정 기능을 구현하는데 있어서는 수정 버튼을 눌렀을 때 수정하기 전 기존 댓글 텍스트가 나와야하고 기존 텍스트에서 추가적으로 글을 쓰거나 삭제하거나 해야해서
수정 버튼을 눌렀을 때에도 기존 텍스트를 유지하는게 어려웠다.
이를 구현하기 위해 어떻게 하면 좋을까 고민을 하다가 내 프로젝트는 리덕스 스토어에서 댓글 state를 가져오는데 그것을 usestate로 textarea onChange 이벤트에 사용 될 state를 새롭게 만들어서
state의 기본값에 넣어주고 댓글 수정창의 textarea의 기본 value로 넣어서 onChange 이벤트시에 기존 댓글 텍스트가 수정되도록 구현하였다.
// 댓글 수정을 위해 기존 댓글의 텍스트를 초기값으로 넣어줌 const [commetText, setCommentText] = useState(text); const onChange = (event) => { const value = event.target.value; setCommentText(value); }; <Content value={commetText} ref={textRef} onInput={autoSize} onChange={onChange} required onClick={autoSize} />
.
'Today I learned(TIL)' 카테고리의 다른 글
22.04.13- TIL (0) | 2022.04.13 |
---|---|
22.03.31- TIL (0) | 2022.03.31 |
22.03.29 -- TIL (0) | 2022.03.29 |
22.03.07- TIL (0) | 2022.03.07 |
22.03.06- TIL (0) | 2022.03.06 |