nedux-logger
Version:
the next redux state management
24 lines (19 loc) • 830 B
JavaScript
(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 });
})));