A collection of React Hooks carrying complex JavaScript queries for handling awesome DOM events. The package is written in TypeScript to support all modern needs.
React DOM Hooks provides a set of UI functionalities that makes it a UI supporting library. APIs provided by each hook can be connected to any UI element. This makes achieving complex UI functionalities easier without restricting the idea to a particular design making it totally unopinionated.
React DOM Hooks manipulates the DOM. Hooks provided in this package work on HTML IDs and classes more than React refs. If you are facing major performance issues after using any of the provided hooks from this package, we would recommend you to switch to a different library or package. But in most cases, this does not impact the performance at all. All the hooks available in this package got tested on multiple applications of different sizes and proficiency levels.
npm install react-dom-hooks
import {useHorizontalScroll} from "react-dom-hooks"
Name | Type | Description |
---|---|---|
containerId | string | Unique ID of the container |
Name | Type | Description |
---|---|---|
handleScroll | function | Takes scroll direction as "left" or "right" |
import {useVerticalScroll} from "react-dom-hooks"
Name | Type | Description |
---|---|---|
containerId | string | Unique ID of the container |
Name | Type | Description |
---|---|---|
handleScroll | function | Takes scroll direction as "up" or "down" |
import {useHorizontalAutoLoopScroll} from "react-dom-hooks"
Name | Type | Description |
---|---|---|
containerId | string | Unique ID of the parent container |
childClass | string | Class assigned to all the children |
loopSpeed | number (optional) | Unique ID of the container |
Name | Type | Description |
---|---|---|
pauseLoop | function | Pauses the loop |
resumeLoop | function | Resumes the loop |
Demo for useHorizontalAutoLoopScroll
import {useCarousel} from "react-dom-hooks"
Name | Type | Description |
---|---|---|
containerRef | React.RefObject < HTMLDivElement > | ref to the parent container |
loop | boolean (optional) | Loop slides on reaching the end |
Name | Type | Description |
---|---|---|
totalSlides | number | Total number of slides |
activeSlide | number | Indexed to 1 |
changeSlide | function | Takes direction as "prev" or "next" |
import {useHorizontalAutoSnapScroll} from "react-dom-hooks"
Name | Type | Description |
---|---|---|
scrollLeftBy | number | Should match (approximately) with the child width |
snapDelay | number | (in ms), i.e. 2000 = 2 seconds. Controls auto-scroll delay |
Name | Type | Description |
---|---|---|
containerRef | React.MutableRefObject<HTMLDivElement | null> | ref to be applied on the scrollable container |