[Redux] Implementar el método createStore

La tienda ofrece tres métodos:

	store.getState()
	store.dispatch()
	store.subscribe()

Implementación:

	const createStore = (reducer) => {
	  let state;
	  let listeners = [];
	
	  const getState = () => state;
	
	  const dispatch = (action) => {
	    state = reducer(state, action);
	    listeners.forEach(listener => listener());
	  };
	
	  const subscribe = (listener) => {
	    listeners.push(listener);
	    return () => {
	      listeners = listeners.filter(l => l !== listener);
	    }
	  };
	
	  dispatch({});
	
	  return { getState, dispatch, subscribe };
	};

Supongo que te gusta

Origin blog.csdn.net/sjs1995/article/details/108625101
Recomendado
Clasificación