-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
댓글 페이지 - 개선사항 구현 및 버그 수정 #309
Conversation
댓글 수정 시 reconfigureItems를 사용하기 위해 Item을 고유 ID인 commentID로 받도록 수정했습니다.
…ing it 답글버튼을 누르거나 댓글 수정버튼을 누른 상태에서 어떠한 댓글을 삭제하고 나면, targetID가 nil로 처리되어 UI상 답글 또는 댓글 수정중이라고 뜨고 있음에도 댓글로 달리는 버그가 존재하였고, 이를 수정했습니다.
- 차후 공지 관련 ViewModel에서도 사용될 예정이기 때문에, 갈아 끼워 적용할 수 있도록 팩토리 패턴을 구현하였습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
고생하셨습니다 승현님!!
protocol BoardDetailViewModelFactory { | ||
static func make(plubbingID: Int, boardModel: BoardModel) -> BoardDetailViewModel | ||
} | ||
|
||
final class BoardDetailViewModelWithFeedsFactory: BoardDetailViewModelFactory { | ||
|
||
private init() { } | ||
|
||
static func make(plubbingID: Int, boardModel: BoardModel) -> BoardDetailViewModel { | ||
return BoardDetailViewModel( | ||
plubbingID: plubbingID, | ||
content: boardModel, | ||
getCommentsUseCase: DefaultGetCommentsUseCase(), | ||
postCommentUseCase: DefaultPostCommentUseCase(), | ||
deleteCommentUseCase: DefaultDeleteCommentUseCase(), | ||
editCommentUseCase: DefaultEditCommentUseCase() | ||
) | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
댓글 관련된 usecase들을 한눈에 파악하기 좋은 것 같습니다👍👍
@@ -42,7 +45,7 @@ protocol BoardDetailViewModelType: BoardDetailViewModel { | |||
|
|||
protocol BoardDetailDataStore { | |||
var content: BoardModel { get } | |||
var comments: [CommentContent] { get } | |||
var comments: Set<CommentContent> { get } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
set 사용하니깐 코드도 간결해지고, 성능도 개선될 것 같네요..!!
📌 PR 요약
🌱 작업한 내용
300자 이내로만 댓글이 써질 수 있도록 구현 (delegate로 처리)
댓글 수정 중 다른 댓글을 삭제한 뒤 수정 버튼을 누르면 댓글로 처리되는 버그 수정(
DeleteIDObserver
을 별도로 추가해서 처리)개선사항
Set
으로 변경, 집합연산을 수행하기 위함📸 스크린샷
📮 관련 이슈