@react-hook/window-scroll

A React hook for updating components when the scroll position of the window on the y-axis changes

Usage no npm install needed!

<script type="module">
  import reactHookWindowScroll from 'https://cdn.skypack.dev/@react-hook/window-scroll';
</script>

README


useScrollPosition()

Bundlephobia Types NPM Version MIT License

npm i @react-hook/window-scroll

A React hook for updating components when the scroll position of the window on the y-axis changes. This hook throttles updates to the scroll position using useThrottle() at 30fps by default, but this rate is configurable.

Quick Start

Check out the example on CodeSandbox

import useScrollPosition from '@react-hook/window-scroll'

const Component = (props) => {
  const scrollY = useScrollPosition(60 /*fps*/)
  return <div>scroll pos: {scrollY}</div>
}

API

useScrollPosition(fps?: number): number

A hook that performantly updates its scroll position at a constant frame rate.

Arguments

Type Default Description
fps number 30 Defines the rate in frames per second at which the scroll position is updated

Returns scrollY: number

Type Description
scrollY number The current scroll position of the window on the y-axis

LICENSE

MIT