티스토리 뷰

현재 프로젝트 진행중 채팅 목록이 필요하여

마지막으로 받은 채팅으로부터 얼마나 지났는지 보여주기 위해 개발이 필요한 상황이다.

 

formatDate라는 함수를 만들어 date값을 입력받고

현재 시간과 비교하여 현재 시간이 1분 전인 경우 방금 전으로 표시하고

1시간 이전인 경우엔 ~분전

1일 이전인 경우에는 ~시간 전

1일이 지난 경우에는 날짜를 보여주도록 반환하도록 하였다.

 

String formatDate(DateTime date) {
    final now = DateTime.now();
    final difference = now.difference(date);
    if (difference.inMinutes < 1) {
      return '방금 전';
    } else if (difference.inHours < 1) {
      return '${difference.inMinutes} 분전';
    } else if (difference.inDays < 1) {
      return '${difference.inHours} 시간 전';
    } else {
      return '${date.year}.${date.month}.${date.day}';
    }
  }