File tree Expand file tree Collapse file tree 4 files changed +20
-7
lines changed Expand file tree Collapse file tree 4 files changed +20
-7
lines changed Original file line number Diff line number Diff line change @@ -10,8 +10,13 @@ import reduxCatch from 'redux-catch';
1010
1111import reducer from ' ./reducer' ;
1212
13+ function errorHandler (error , getState ) {
14+ console .error (error);
15+ console .debug (' current state' , getState ());
16+ }
17+
1318const store = createStore (reducer, applyMiddleware (
14- reduxCatch (error => console . error (error) )
19+ reduxCatch (errorHandler )
1520));
1621```
1722- ` reduxCatch ` receive a function to use when an error happen.
Original file line number Diff line number Diff line change 1- const catchMiddleware = errorHandler => ( ) => next => action => {
1+ const catchMiddleware = errorHandler => ( store ) => next => action => {
22 try {
33 return next ( action ) ;
44 } catch ( error ) {
5- errorHandler ( error ) ;
5+ errorHandler ( error , store . getState ) ;
66 return error ;
77 }
88} ;
Original file line number Diff line number Diff line change 11{
22 "name" : " redux-catch" ,
3- "version" : " 1.0 .0" ,
3+ "version" : " 1.1 .0" ,
44 "description" : " Error catcher middleware for Redux reducers and middlewares" ,
55 "main" : " build/index.js" ,
66 "scripts" : {
Original file line number Diff line number Diff line change @@ -2,21 +2,29 @@ import test from 'tape';
22
33import middleware from '../build/index.js' ;
44
5- const mockedMiddlewareAPI = { } ;
5+ const mockedMiddlewareAPI = {
6+ getState ( ) {
7+ return 'test' ;
8+ } ,
9+ } ;
610const baseError = new Error ( 'There was an error.' ) ;
711
812test ( 'Catch middleware - error case' , t => {
913 const mockedNext = ( ) => {
1014 throw baseError ;
1115 } ;
1216
13- t . plan ( 2 ) ;
17+ t . plan ( 3 ) ;
1418
15- function errorHandler ( error ) {
19+ function errorHandler ( error , getState ) {
1620 t . ok (
1721 error . message === baseError . message ,
1822 'it should receive the expected error message in the `errorHandler`'
1923 ) ;
24+ t . ok (
25+ getState ( ) === 'test' ,
26+ 'it should get the expected state from `getState()`'
27+ ) ;
2028 }
2129
2230 const error = middleware ( errorHandler ) ( mockedMiddlewareAPI ) ( mockedNext ) ( ) ;
You can’t perform that action at this time.
0 commit comments