Skip to content

Conversation

@jungmyunggi
Copy link
Collaborator

🔨 테스크

useMediaQuery 구현

import { useState, useEffect } from "react";

export const useMediaQuery = (query: string): boolean => {
  const [viewport, setViewport] = useState(false);
  useEffect(() => {
    const mediaQuery = window.matchMedia(query);
    setViewport(mediaQuery.matches);
    const eventListener = (e: MediaQueryListEvent) => {
      setViewport(e.matches);
    };
    mediaQuery.addEventListener("change", eventListener);

    return () => {
      mediaQuery.removeEventListener("change", eventListener);
    };
  }, [query]);

  return viewport;
};

  • 문자열로 입력받은 viewport의 크기를 useEffect를 이용해 확인해가면서 모바일인지 아닌지 판단하는 함수입니다.

📋 작업 내용

  • 헤더 반응형
  • 채팅 및 사이드바 반응형
  • 검색시 페이지네이션 부분 반응형

📷 스크린 샷

  • 모바일일 경우 헤더의 로고부분을 변경하고 사이드바가 나올 수 있는 햄버거버튼을 추가했습니다.
    image

  • 페이지네이션시 previous, next라는 글자로 버튼을 생성했었는데 모바일에서는 글자가 잘리는 문제가 발생해서 삭제시켰습니다.
    image

  • 사이드바와 채팅 모두 화면을 꽉 채우게 변경시켰습니다.
    image
    image

@jungmyunggi jungmyunggi added the 🔨 Refactor 리팩토링 (구조 변경) label Jan 16, 2025
@jungmyunggi jungmyunggi requested a review from junyeokk January 16, 2025 13:43
@jungmyunggi jungmyunggi self-assigned this Jan 16, 2025
@jungmyunggi jungmyunggi changed the title Refactor/responsive web ♻️ refactor: 채팅, 헤더 반응형 작업 Jan 18, 2025
Copy link
Collaborator

@junyeokk junyeokk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

고생하셨어요!~

@jungmyunggi jungmyunggi merged commit 2c1ee31 into main Jan 20, 2025
1 check passed
@jungmyunggi jungmyunggi deleted the refactor/responsive-web branch January 20, 2025 05:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🔨 Refactor 리팩토링 (구조 변경)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants