1.5.0 • Published 8 years ago

redux-limiter v1.5.0

Weekly downloads
1
License
ISC
Repository
-
Last release
8 years ago

Synopsis

Limit the rate at which redux published change notifications

For each action published to redux, redux will attempt to push a change notification that will initiate a document rendering. Since the human eye perceives 60 frames per second as being contiguous motion, initiating renderings more frequently than that is superfluous. Time spent on superfluous renderings could be better spent elsewhere, such as processing more actions

redux-limiter throttles the rate of change notification. Applications which mutate state more frequently than they need UI updates can receive significant performance boosts

Motivation

Boost the throughput of actions through redux by ignoring render requests unnecessary for appearance of continuity

Caveat Codor

This module is appropriate if you are using stateless components. Since the object of this module is to skip update frames, you want to use it with components that are dependent only on components that are dependent on redux state alone

Installation

Install the package:

$ npm install redux-limiter

Contribute to the package:

$ git clone https://github.com/joaker/redux-limiter.git

Modules

import {createStore} from 'redux'; import limitStore from 'redux-limiter'; import {Provider} from 'react-redux'; import App from 'components/App'; // or whatever your base component is

// create a reducer const reducer = (state = 1, action) => { switch (action.type) { case 'NEXT': return state.iteration + 1; } return state; }

// create a base store const baseStore = createStore(reducer, defaultState);

// choose a rate to for throttle updates (rate >= 1; default rate is 1) const throttleRate = 2;

// limit the store with react-limiter const store = limitStore(baseStore, throttleRate);

// return ( );

Modules

react, redux, react-router socketio, webpack/express css-modules

Contributors

Jack Ofnotrade

License

Have fun