Skip to content

Performant, flexible & extensible hooks with easy-to-use flexibility. react-use-hooks reduces the amount of code you need to write while removing unnecessary re-renders in ReactJS.

License

Notifications You must be signed in to change notification settings

tam11a/react-use-hooks

Repository files navigation

react-use-hooks

React Customised Hooks Library

Downloads NPM JavaScript Style Guide

Performant, flexible & extensible hooks with easy-to-use flexibility. react-use-hooks reduces the amount of code you need to write while removing unnecessary re-renders.

Table of contents

Getting started

Installation

npm install --save @tam11a/react-use-hooks

API

useTitle

Change the Website Title with useTitle().

Import

import { useTitle } from "@tam11a/react-use-hooks";

Usage

useTitle("My First App"); // Change the app title

Pass the expected title you want the website renamed and it's done.

Example

import React from "react"; import { useTitle } from "@tam11a/react-use-hooks"; const App = () => { // useTitle() to change the app title useTitle("My First App"); return ( <> <div>Hello World!</div> </> ); }; export default App;

useToggle

useToggle is the toggle state functionality everytime you need to make in different component.

Import

import { useToggle } from "@tam11a/react-use-hooks";

Usage

const { state, toggleState, setState } = useToggle(defaultValue);

Current state in state,

toggle function in toggleState()

or directly set the state value with setState().

The default value of the boolean state is always false

Example

const App = () => { const { state, toggleState } = useToggle(true); return ( <> <div> Light is: <button onClick={toggleState}>{state ? "On" : "Off"}</button> </div> </> ); };

usePaginate

usePaginate, the pagination for pages and data tables handling hook.

Import

import { usePaginate } from "@tam11a/react-use-hooks";

Usage

const { params, limit, setLimit, page, setPage, search, setSearch, watch, setFilterField, getQueryParams, } = usePaginate();

params : returns all the params in the hook

limit : number type variable that returns the limit or page size

setLimit : to set the page size or limit, pass the limit

page : number type variable that returns the current page number

setPage : to set the page number, pass the page number

search : string type variable carries the search string

setSearch : to set search string, pass the string

watch : to get value of any filter field as state, watch always work

setFilterField : set or update any filter field pass the field name & value

getQueryParams : returns all params as query object

Default Values

const { getQueryParams } = usePaginate({ defaultParams: { limit: 5, }, });

Default params can be passed as following. If no params passed, the default params will be setted as,

limit: 10

page: 1

search: ""

filters: {}

Example

const App = () => { const { page, setPage } = usePaginate(); return ( <div> <button onClick={() => setPage(page - 1)}>-</button> {page} <button onClick={() => setPage(page + 1)}>+</button> </div> ); };
console.log(getQueryParams());

License

N/A © tam11a

About

Performant, flexible & extensible hooks with easy-to-use flexibility. react-use-hooks reduces the amount of code you need to write while removing unnecessary re-renders in ReactJS.

Topics

Resources

License

Stars

Watchers

Forks