-
글쓴이글
-
2021년 12월 19일 13:59 #22331

애플애플참가자
댓글을 남기고 게시글을 누르면 댓글이 post되도록 코드를 짜놨는데요 post는 잘 되지만 문제는예를들어 1,2,3,4,5 총 5개의 게시물이 있다면 1번 게시물이나 3번 게시물에서 댓글을 남기면 모든 게시물에 댓글입력이 동시에 적용된다는 것입니다..ㅠㅠ
좋아요 클릭이나 찜하기 버튼도 하나의 게시물에서 누르면 다른 게시물도 동시에 적용이 되어버리는데요 이게 jsx의 문제인지 react map을 사용하는 방법에서 문제 가 있는건지 구글링을 해보아도 방법이 나오지 않아 질문드립니다 선생님 부탁드립니다ㅠㅠ
2021년 12월 19일 19:48 #22363
애플애플참가자




현재 저의 코드입니다 입력한 댓글을 DB에 저장할 state가 하나 있고 핸들러를 사용해서 input 태그안에 value값과 onChange를 사용해서 DB에 데이터값이 넘어가도록 코드를 구현한 상태이고
3번째 사진과 같이 전체 게시물은 게시물을 등록할때 입력하는 글의 갯수에 따라 반복문이 돌며 게시물이 등록되도록 구현한 상태입니다
첫번째 사진처럼 첫번째 게시물에 댓글을 입력하면 나머지 게시물에도 동시에 입력이 되어져 버리는 상황이라 모든 post ID에 같은 댓글이 DB에 담겨져 버리게됩니다ㅠㅠ 말씀하신 state가 하나밖에 없어서 라는 말씀이 어떤 뜻인지 이해가 잘 안가서요 ㅠㅠ 현재 이 코드에서 어떤 부분은 수정해야 제가 입력한 게시물에만 댓글이 달리도록 할 수 있을까요? 선생님 부탁드립니다
2021년 12월 19일 22:57 #22380
codingapple키 마스터모든 인풋에 입력한글을 하나의 state에 저장하고 그걸 다시 집어넣고 있어서 그런듯요
인풋에 value={} 부분을 없애봅시다
2021년 12월 19일 23:45 #22385
애플애플참가자선생님 감사합니다 value={} 없애니 전체가 함께 입력되는 문제가 해결됐습니다ㅠㅠ
그럼 value값은 따로 지정을 안해줘도 상관이 없는건가요?
한가지 문제가 더 있는데 게시물에 글을 입력하면 모든 게시물의 id에 댓글이 저장되어져버리는 현상이 발생합니다..
위의 axios 코드를 잘못입력한건지 댓글기능 구현하는게 참 어렵네요..
2021년 12월 20일 00:19 #22386
애플애플참가자댓글을 입력할 때 해당 게시글의 의 id값을 같이 저장해서 데이터바인딩 할 때 해당하는 게시물에 바인딩을 할 수 있는 방법이 궁금합니다
2021년 12월 20일 09:47 #22397
codingapple키 마스터value 속성은 인풋에 입력한값을 맘대로 컨트롤하고 싶을 때 쓰면 됩니다
아마 댓글입력시 주변에 있는 게시물 id 같은걸 가져와서 state나 변수같은 곳에 따로 기록해두라고 코드짜면 되지 않을까요
2021년 12월 20일 15:03 #22423
애플애플참가자

선생님 말씀대로 ID값을 state로 따로 저장해서 form태그에 onChange를 사용해서 해당 게시글에 댓글을 입력하면 DB에 해당 게시물의 ID값을 가지고 저장이 잘 되는것까지 완료 했습니다
문제는 댓글을 입력하고 버튼을 누름과 동시에 댓글이 게시글에 떠야하는데 새로고침을 해야 뜨는 문제와
해당 게시글에 댓글이 보여지지 않고 1번과 2번 3번 게시물이 있으면 댓글이 1 -> 2 -> 3번 게시글 순으로 밀려나면서 찍혀진다는 것 입니다
ID값을 저장한 state를 사용해서 해당 게시물에 작성한 댓글이 바인딩 될 수 있는 방법이 있을까요?
많은 시도를 해봤지만 방법이 도저히 먹히지 않아서 다시 질문드립니다..ㅠㅠ
2021년 12월 20일 18:34 #22436
codingapple키 마스터첫째 문제는 게시버튼을 눌러도 아무런 기능을 실행하고 있지 않아서가 아닐까요 버튼누르면 작성한 댓글을 어디 state에 추가해주거나 그래봅시다
둘째 문제는 2번게시물에 댓글쓰면 DBComments에 2번항목에 댓글이 잘 저장되는지 콘솔창에 출력부터 해봅시다
-
글쓴이글
- 답변은 로그인 후 가능합니다.








