UNPKG

nedux-logger

Version:

the next redux state management

24 lines (19 loc) 830 B
(function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react')) : typeof define === 'function' && define.amd ? define(['exports', 'react'], factory) : (global = global || self, factory(global['React-Nedux'] = {}, global.react)); }(this, (function (exports, react) { 'use strict'; const createStoreHook = store => key => { const [value, setValue] = react.useState(store.get(key)); const setter = react.useCallback(newValue => store.set(key, newValue), [key]); react.useEffect(() => { const subscription = store.subscribe(key, { next: setValue }); return () => subscription.unsubscribe(); }, []); return [value, setter]; }; exports.createStoreHook = createStoreHook; Object.defineProperty(exports, '__esModule', { value: true }); })));