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 25 26 27 28 29 30 31 32 33 34 35 36 37 | 1x 1x 1x | import React from 'react'; import { useContext } from 'react'; type InitialState = { BMap?: typeof BMap; map?: BMap.Map; container?: HTMLDivElement | null; }; export const initialState: Partial<InitialState> = { map: undefined, BMap: undefined, container: undefined, }; export const reducer = (state: InitialState, action: InitialState) => { return { ...state, ...action, }; }; export interface ContextState { state: Partial<InitialState>; dispatch: React.Dispatch<InitialState>; } export const Context = React.createContext<ContextState>({ state: initialState, dispatch: () => null, }); export function useMapContext() { const { state, dispatch } = useContext(Context); return { ...state, state, dispatch }; } |