2024. 1. 22. 20:49ㆍ개발
개발하면서 구현한 기능을 유저입장에서 사용하던 중
1. 내부 로직이 개판이다
2. 챗모달 컴포넌트// 프로덕트 컴포넌트 이 두개에 챗모달을 구현하고 각각 컴포넌트를 따로 만들었는데
챗모달 컴포넌트는 위의 값을 전역상태로 받아서 실행을 하는데, 문제는 chat_id 아래에, others_id 와 user_id이다.
값 부분이 위아래가 서로 바뀐 걸 볼 수 있다 .
이렇게 한 이유는 위의 이미지처럼 테이블에 단방향으로 저장되고 또한,
프로덕트 컴포넌트에서 a (발신자)->b(수신자), 로직이 이 대로 유지가 되어야 하는데,
이걸 챗모달 컴포넌트에서 챗을 구현을 하려면 b(발신자)=>a(수신자)가 되어버려서 채팅이 상대방에 안가는 문제가 발생한다 그래서, 첫번째 이미지처럼 서로 바꿔서 내려주면
a (발신자)->b(수신자)가 되어 채팅이 되기는 한다.
또한 a->b 이게 고정이 되어야 하다보니, 프로덕트에서는 이게 지켜지다가
챗모달 컴포넌트 쪽에와서 챗모달을 실행하면 a->a 인 현상이 발생.
그리고 이게 채팅이라고 보기에 애매, 1:1쪽지라고 봐야 정확할 듯 하다.
채팅은 챗방에 누가 있는지랑, 챗방 id 정도만 있으면, 내가 쓴글만 author_id로 줘서 그걸 현재 로그인한 유저와 비교해서
챗창에 오른쪽으로 뜨도록 하는게 채팅인데, 애매하게 구현하고 있었다.
그래서 로직도 어거지로 구현 중이었고,
결국 내부로직이 엉망이어서 다시 엎고, 방금 설명한 채팅형식으로 수정중이다.
'개발' 카테고리의 다른 글
아 중요한 걸 빼먹었네. (2) | 2024.01.26 |
---|---|
챗 추가 기능 수정 중 (0) | 2024.01.25 |
챗기능 1차 구현 완 (0) | 2024.01.19 |
오늘 회의 내용. (3) | 2024.01.18 |
supabase 테이블 값이 안바뀌니 엎고 다시 만들 수 밖에.. (0) | 2024.01.16 |