1234567891011121314151617181920212223242526272829303132333435 |
- import { combineReducers, createStore } from 'redux';
- export class StoreWrapper {
- constructor() {
- this._store = null;
- this._reducers = {};
- this._initialState = {};
- }
- addReducer(name, reducer, initialState) {
- this._reducers[name] = reducer;
- this._initialState[name] = initialState;
- }
- init() {
- this._store = createStore(
- combineReducers(this._reducers), this._initialState);
- }
- getStore() {
- return this._store;
- }
- // Store API
- getState() {
- return this._store.getState();
- }
- dispatch(action) {
- return this._store.dispatch(action);
- }
- }
- export default new StoreWrapper();
|