2.0.2 • Published 5 months ago

@yoonhaemin-lib/use-param-state v2.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
5 months ago

useParamState

state관리를 useState가 아닌 param으로 관리합니다. useState와 인터페이스가 같아 기존에 있는 state를 url로 의존성을 옮기기 쉽습니다.

예시 코드

import React from 'react';
import useParamState from './useParamState';

const ExampleComponent: React.FC = () => {
  // 'page'와 'filter'라는 두 개의 쿼리 파라미터를 관리하는 상태로 설정
  const [searchParams, setSearchParams] = useParamState<{ page: string | undefined; filter: string | undefined }>({
    page: '1',
    filter: undefined,
  });

  const handleNextPage = () => {
    setSearchParams((prevState) => ({
      ...prevState,
      page: (Number(prevState.page) + 1).toString(),
    }));
  };

  const handleFilterChange = (event: React.ChangeEvent<HTMLInputElement>) => {
    setSearchParams((prevState) => ({
      ...prevState,
      filter: event.target.value,
    }));
  };

  return (
    <div>
      <h2>현재 페이지: {searchParams.page}</h2>
      <h2>현재 필터: {searchParams.filter ?? '없음'}</h2>

      <button onClick={handleNextPage}>다음 페이지로 이동</button>

      <input type="text" placeholder="필터 입력" value={searchParams.filter ?? ''} onChange={handleFilterChange} />
    </div>
  );
};

export default ExampleComponent;

API Reference

useParamState 매개변수

매개변수타입설명필수 여부
`initialValue``T`초기값 입니다. 객체 형태로 입력합니다.X
`options``NavigateOptions`상태 변경시 url 변경을 어떻게 할지에 대한 옵션입니다.X

useParamState 반환값

반환값타입설명
`searchParams``T`현재 URL query parm의 상태를 나타내는 객체입니다.
`setSearchParams``ParamStateSetter`검색 파라미터를 업데이트하는 함수입니다. 객체 또는 새로운 상태를 반환하는 함수를 인자로 받습니다.

2.0.2

5 months ago

2.0.1

5 months ago

2.0.0

5 months ago

1.0.2

6 months ago

1.0.1

6 months ago

1.0.3

6 months ago

1.0.0

8 months ago