woowacourse-teams / 2023-team-by-team

✨쉽고 간단한 팀플 플랫폼, 팀바팀✨
https://teamby.team
72 stars 2 forks source link

[FE] 일정 생성/수정 모달에서 날짜 또는 시간 변경 시 편의를 위한 자동 값 변경 기능 구현 #903

Closed wzrabbit closed 10 months ago

wzrabbit commented 10 months ago

[FE] 일정 생성/수정 모달에서 날짜 또는 시간 변경 시 편의를 위한 자동 값 변경 기능 구현

이슈번호

close #902

PR 내용

본 PR에서는 일정 생성 및 수정 모달에서 사용자가 일정 또는 시간을 변경할 경우, 사용자에게 편의를 위해 일부 값을 자동으로 변경해 주는 기능을 구현하였다.

자동으로 값을 변경하는 목적은 아래의 두 가지이다.

  1. 사용자가 잘못 일정을 입력했을 경우 이를 바로잡기 위해.
  2. 사용자에게 일관된 편의성을 제공하기 위해.

일정 생성 및 수정 모달은 각각의 커스텀 훅을 지니고 있는데, 자동으로 값이 변경되는 기능은 두 모달 모두에서 똑같은 로직으로 작동할 것이기에 일정의 여러 값들을 관리하는 useDateTimeRange 커스텀 훅을 별도로 작성하여, 기존의 중복되는 로직을 줄이고 복잡한 코드를 분리하였다.

일정이 변경되는 구체적인 조건과 작동 스크린샷은 아래에서 다룬다.

일정이 자동 변경되는 조건

① 일정 시작일이 변경되는 경우

작동 예시는 아래의 스크린샷을 참고하라.

ezgif com-video-to-gif-converted

② 일정 마감일이 변경되는 경우

③ 일정 시작 시간이 변경되는 경우

아래의 세 가지 작동 예시를 들면서 작동 방식을 보다 명확하게 설명하고자 한다. 세 가지 상황 모두, 시작 시간의 변경 이후 마감 시간보다 나중이 되는 경우이다.

  1. 변경 전 시작일 == 마감일 인 경우 ezgif com-video-to-gif-converted (1)

  2. 변경 전 시작일 > 마감일 인 경우 ezgif com-video-to-gif-converted (4)

  3. 변경 전 시작일 < 마감일 인 경우 ezgif com-video-to-gif-converted (2)

1번, 2번에서는 시작 시간의 변경 이후 마감 시간이 자동으로 조정되었음에도 불구하고 3번에서는 자동 조정이 일어나지 않는다. 이는 자동 조정을 하지 않아도 일정이 올바른 상태이기 때문이다.

④ 일정 마감 시간이 변경되는 경우

의논할 거리

납득이 안 되는 조건이 있거나 바뀌면 좋을 만한 조건이 있다면 언제든지 추천 고고

wzrabbit commented 10 months ago

아쉽게도 지금 시간이 촉박해서 많은 설명을 적어주지는 못하지만... image

혹시 몰라서 각 커밋을 할 때마다 함수 단위로 해뒀고 기본적인 설명을 적어두었어 이 설명을 보되 그래도 이해가 안 된다면 추후에 다시 설명해 줄게!