Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

redux-timer-middleware

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

redux-timer-middleware

redux-timer-middleware

  • 1.0.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
51
decreased by-67.31%
Maintainers
1
Weekly downloads
 
Created
Source

redux-timer-middleware

Simple middleware to dispatch actions periodically

Installation

$ npm i --save redux-timer-middleware

Usage

import timerMiddleware from 'redux-timer-middleware'

applyMiddleware(timerMiddleware)(createStore)
Start Timer

You need to dispatch action START_TIMER and provide in payload:

  • actionName (required) - action that will be dispatched each timer tick
  • timerName (required) - timer name (need for stop feature)
  • actionPayload - payload that will be provided to the actionName
  • timerInterval - interval in ms (default 1000)
  • timerPeriod - tick count after which timer ends, when timer ends - action name with _END will be dispatched
Stop Timer or Stop multiple timers

You need to dispatch action STOP_TIMER and provide in payload:

  • timerName (required) - timer name that we stop
  • timerNames [] - timer names in array if we need to stop multiple timers

Examples

Infinite timer:

import {START_TIMER} from 'redux-timer-middleware';

dispatch({
    type: START_TIMER,
    payload: {
        actionName: 'SOME_ACTION_TICK',
        timerName: 'infiniteTimer'
    }
});

With a payload:

import {START_TIMER} from 'redux-timer-middleware';

dispatch({
    type: START_TIMER,
    payload: {
        actionName: 'SOME_ACTION_TICK',
        actionPayload: { /* my cool payload */ },
        timerName: 'infiniteTimer'
    }
});

To stop this timer:

import {STOP_TIMER} from 'redux-timer-middleware';

dispatch({
    type: STOP_TIMER,
    payload: {
        timerName: 'infiniteTimer'
    }
});

Timer that ends after 10 seconds:

import {START_TIMER} from 'redux-timer-middleware';

dispatch({
    type: START_TIMER,
    payload: {
        actionName: 'SOME_ACTION_TICK',
        timerName: 'testTimer',
        timerPeriod: 10
    }
});

After timer ends action with type 'SOME_ACTION_TICK_END' will be dispatched

Keywords

FAQs

Package last updated on 22 Apr 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc