tiny-throttle

🚗 A 311 byte (gziped) throttle & debounce package

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
tiny-throttle
331.0.423 days ago5 years agoMinified + gzip package size for tiny-throttle in KB

Readme

tiny-throttle 🚗
!Build Statusbuild-badgebuild !versionversion-badgepackage !bundlephobiabundlephobia-badgebundlephobia !MIT Licenselicense-badgelicense
A throttle & debounce package with a tiny file size.
At only 329 bytes it is 83% smaller than lodash's _.debounce() & _.throttle()

Install

yarn add tiny-throttle

or
npm install --save tiny-throttle

or
<script src="https://unpkg.com/tiny-throttle/dist/tiny-throttle.umd.js"></script>

Then you can find the library on window.tinyThrottle

Usage

import { debounce, throttle } from 'tiny-throttle'

// on click, run a function
// then wait 500 miliseconds from last click to run again on next click
document.getElementById('button').onclick = debounce(
  doSomethingWithNetwork,
  500,
  true,
)

// on click, wait 500 milliseconds after last click then run a function
document.getElementById('button').onclick = debounce(
  doSomethingToTeachUsersToWait,
  500,
)

// on click, run a function, then make sure it doesn't get run more than once
// every 500 miliseconds
document.getElementById('button').onclick = throttle(
  doSomethingWithNetwork,
  500,
)

License

MIT © Ben Williams