lightweight-globalstate
Version:
An lightweight and easy state management hook for using React + Typescript
24 lines (15 loc) • 854 B
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
var React = require('react');
var React__default = _interopDefault(React);
const GlobalStateContext = React.createContext({});
const stateReducer = () => (state, newState) => (Object.assign(Object.assign({}, state), newState));
const StateProvider = (props) => {
const state = props.initialState ? props.initialState : {};
return (React__default.createElement(GlobalStateContext.Provider, { value: React.useReducer(stateReducer(), state) }, props.children));
};
const useGlobalState = () => React.useContext(GlobalStateContext);
exports.StateProvider = StateProvider;
exports.useGlobalState = useGlobalState;
//# sourceMappingURL=index.js.map