react-hook-filter

react-hook-filter is a react hook package for filters functionality in web apps

Usage no npm install needed!

<script type="module">
  import reactHookFilter from 'https://cdn.skypack.dev/react-hook-filter';
</script>

README

react-hook-filter

react-hook-filter is a react hook package for filters functionality in web apps

Installation

npm

npm install react-hook-filter

yarn

yarn add react-hook-filter

Usage

import useFilters from 'react-hook-filter';

const initialFilters = { name: '', age: '', gender: '' };

const Home = ({ ...props }) => {
  const { filters, changeFilters, resetFilters, submitFilters } = useFilters({
    initialFilters,
  });

  const handleSubmit = (e: any) => {
    e.preventDefault();
    submitFilters();
  };
  return (
    <div className={styles.Home}>
      <form onSubmit={handleSubmit}>
        <input
          placeholder="name"
          value={filters.name}
          type="text"
          onChange={e => changeFilters('name', e.target.value)}
        />
        <select onChange={e => changeFilters('gender', e.target.value)}>
          <option value="male">male</option>
          <option value="female">female</option>
        </select>
        <input
          placeholder="age"
          value={filters.age}
          type="number"
          onChange={e => changeFilters('age', e.target.value)}
        />

        <button type="submit">submit</button>
        <button onClick={resetFilters}>reset</button>
      </form>
    </div>
  );
};

export default Home;

License

MIT