Redux DevTools Instrumentation
Redux enhancer used along with Redux DevTools or Remote Redux DevTools.
Installation
Usage
Add the store enhancer:
store/configureStore.js
API
instrument(monitorReducer, [options])
arguments
monitorReducer function called whenever an action is dispatched (see the example of a monitor reducer).
options object
maxAge number or function(currentLiftedAction, previousLiftedState) - maximum allowed actions to be stored on the history tree, the oldest actions are removed once
maxAge
is reached. Can be generated dynamically with a function getting current action as argument.shouldCatchErrors boolean - if specified as
true
, whenever there's an exception in reducers, the monitors will show the error message, and next actions will not be dispatched.shouldRecordChanges boolean - if specified as
false
, it will not record the changes tillpauseRecording(false)
is dispatched. Default istrue
.pauseActionType string - if specified, whenever
pauseRecording(false)
lifted action is dispatched and there are actions in the history log, will add this action type. If not specified, will commit when paused.shouldStartLocked boolean - if specified as
true
, it will not allow any non-monitor actions to be dispatched tilllockChanges(false)
is dispatched. Default isfalse
.shouldHotReload boolean - if set to
false
, will not recompute the states on hot reloading (or on replacing the reducers). Default totrue
.trace boolean or function - if set to
true
, will include stack trace for every dispatched action. You can use a function (with action object as argument) which should returnnew Error().stack
string, getting the stack outside of reducers. Default tofalse
.traceLimit number - maximum stack trace frames to be stored (in case
trace
option was provided astrue
). By default it's10
. Iftrace
option is a function,traceLimit
will have no effect, that should be handled there like so:trace: () => new Error().stack.split('\n').slice(0, limit+1).join('\n')
(+1
is needed for Chrome where's an extra 1st frame forError
).
License
MIT
Last updated