import React, { useReducer } from 'react'; const CHANGE_LOCALE = 'CHANGE_LOCALE'; const mainContext = React.createContext(); const reducer = (state, action) => { switch (action.type) { case CHANGE_LOCALE: return { ...state, locale: action.locale || 'zh' }; default: return state; } }; const ContextProvider = (props) => { const [state, dispatch] = useReducer(reducer, { locale: 'zh', }); return ( {props.children} ); }; export { ContextProvider, mainContext, reducer };