usePageNavigation

Introduction

이 훅은 React 애플리케이션에서 페이지 내비게이션을 편리하게 처리하기 위한 커스텀 훅인 usePageNavigation을 구현한 것입니다. React Router 라이브러리의 useNavigate 훅을 이용하여 페이지 이동을 관리하고, 몇 가지 편의 기능을 제공합니다.

  1. 간편한 페이지 이동: 커스텀 훅을 사용하면 페이지 이동이나 브라우저 열기 등의 작업을 간편하게 처리할 수 있습니다. 반복적으로 사용되는 내비게이션 로직을 훅으로 추상화하여 중복을 줄일 수 있습니다.

  2. 유지보수 용이성: 페이지 내비게이션 로직이 훅에 캡슐화되어 있으므로, 향후 내비게이션 관련 로직을 수정할 때 한 곳에서만 수정하면 됩니다. 이는 코드 유지보수를 향상시키고 버그를 줄일 수 있습니다.

  3. 확장성과 재사용성: 커스텀 훅은 각 컴포넌트에서 쉽게 재사용할 수 있습니다. 필요한 프로젝트에서 커스텀 훅을 추가로 확장하여 특정 요구사항에 맞게 사용할 수 있습니다.

Example

// 예시 컴포넌트에서의 사용
import React from "react";

const ExampleComponent = () => {
  const navigation = usePageNavigation();

  return (
    <div>
      <button onClick={navigation.onGoBackward}>뒤로 가기</button>
      <button onClick={navigation.onGoForward}>앞으로 가기</button>
      <button onClick={() => navigation.move("/some-page")}>특정 페이지로 이동</button>
      <button onClick={() => navigation.moveOtherBrowser("https://example.com", "_blank", "width=800,height=600")}>다른 브라우저에서 열기</button>
      <button onClick={navigation.onGoHome}>홈으로 이동</button>
    </div>
  );
};

Hook

Last updated