Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | 13x 13x 13x 3x 3x 13x | import React, { useEffect, useState } from "react"; import useMiddleware from "./useMiddleware"; import { INIT, PROVIDER } from "./constants"; /** * * @param {Object} store, consisting of {reducer, initialState, middlewares} * @return {Array} A React Hook, container, which gives state, dispatch and a flag * signaling that the store is ready */ function useProvider(store) { const [state, dispatch] = useMiddleware(store); const [ready, setReady] = useState(false); useEffect(() => { dispatch({ type: `${PROVIDER}/${INIT}` }); setReady(true); }, []); return [state, dispatch, ready]; } export default useProvider; |