@gdjiami/hooks
Version:
react hooks for mygzb.com
21 lines (20 loc) • 652 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var react_1 = require("react");
function useInstance(initial) {
var initialized = react_1.useRef(false);
var ref = react_1.useRef();
if (!initialized.current) {
ref.current =
typeof initial === 'function' ? initial() : initial || {};
initialized.current = true;
}
var update = react_1.useCallback(function (value) {
for (var key in value) {
// @ts-ignore
ref.current[key] = value[key];
}
}, []);
return [ref.current, update];
}
exports.default = useInstance;