@rooks/use-interval
    TypeScript icon, indicating that this package has built-in type declarations

    4.11.2 • Public • Published

    @rooks/use-interval

    Note: Future updates to this package have moved to the main package rooks. All hooks now reside in a single package which you can install using

    npm install rooks
    

    or

    yarn add rooks
    

    Rooks is completely treeshakeable and if you use only 1 of the 50+ hooks in the package, only that hook will be bundled with your code. Your bundle will only contain the hooks that you need. Cheers!

    TitleCard

    Build Status

    About

    setInterval hook for React.

    Installation

    npm install --save @rooks/use-interval
    

    Importing the hook

    import useInterval from "@rooks/use-interval"

    Usage

    function reducer(state, action) {
      switch (action.type) {
        case "increment":
          return { count: state.count + 1 };
        default:
          return state;
      }
    }
    
    function Demo() {
      const [value, dispatcher] = useReducer(reducer, { count: 0 });
    
      function increment() {
        dispatcher({
          type: "increment"
        });
      }
    
      const { start, stop } = useInterval(() => {
        increment();
      }, 1000);
    
      return (
        <>
          <p>value is {value.count}</p>
          <button onClick={start}>Start</button>
          <button onClick={stop}>Stop</button>
        </>
      );
    }
    render(<Demo/>)

    Arguments

    Argument Type Description Default value
    callback function Function be invoked after each interval duration undefined
    intervalDuration number Duration in milliseconds after which callback is invoked undefined
    startImmediate boolean Should the timer start immediately or no false

    Returned Object

    Returned object attributes Type Description
    start function Start the interval
    stop function Stop the interval
    intervalId intervalId IntervalId of the interval

    Install

    npm i @rooks/use-interval

    DownloadsWeekly Downloads

    1,478

    Version

    4.11.2

    License

    MIT

    Unpacked Size

    11.1 kB

    Total Files

    13

    Last publish

    Collaborators

    • avatar