Thunk and logger for redux

This commit is contained in:
dannyrb 2019-06-17 10:40:01 -04:00
parent a75bae90aa
commit 80047ff518
3 changed files with 16 additions and 5 deletions

View File

@ -95,7 +95,9 @@
"react-router-dom": "^5.0.1", "react-router-dom": "^5.0.1",
"react-viewerbase": "0.9.0", "react-viewerbase": "0.9.0",
"redux": "^4.0.1", "redux": "^4.0.1",
"redux-oidc": "3.1.x" "redux-logger": "^3.0.6",
"redux-oidc": "3.1.x",
"redux-thunk": "^2.3.0"
}, },
"devDependencies": { "devDependencies": {
"@babel/core": "^7.4.5", "@babel/core": "^7.4.5",

View File

@ -2,7 +2,6 @@ import viewerCommandDefinitions from './viewer.js';
const CONTEXTS = { const CONTEXTS = {
viewer: 'VIEWER', viewer: 'VIEWER',
cornerstone: 'VIEWER::CORNERSTONE',
}; };
/** /**

View File

@ -1,18 +1,28 @@
import { combineReducers, createStore } from 'redux'; import { applyMiddleware, combineReducers, createStore } from 'redux';
import { createLogger } from 'redux-logger';
import layoutReducers from './layout/reducers.js'; import layoutReducers from './layout/reducers.js';
import { reducer as oidcReducer } from 'redux-oidc'; import { reducer as oidcReducer } from 'redux-oidc';
import { redux } from 'ohif-core'; import { redux } from 'ohif-core';
import thunkMiddleware from 'redux-thunk';
// Combine our ohif-core, ui, and oidc reducers // Combine our ohif-core, ui, and oidc reducers
// Set init data, using values found in localStorage // Set init data, using values found in localStorage
const { reducers, localStorage } = redux; const { reducers, localStorage } = redux;
const loggerMiddleware = createLogger();
reducers.ui = layoutReducers; reducers.ui = layoutReducers;
reducers.oidc = oidcReducer; reducers.oidc = oidcReducer;
const combined = combineReducers(reducers); const rootReducer = combineReducers(reducers);
const store = createStore(combined, localStorage.loadState()); const store = createStore(
rootReducer,
localStorage.loadState(), // preloadedState
applyMiddleware(
thunkMiddleware, // Lets us dispatch() functions
loggerMiddleware // neat middleware that logs actions
)
);
// When the store's preferences change, // When the store's preferences change,
// Update our cached preferences in localStorage // Update our cached preferences in localStorage