UNPKG

react-hook-use-state

Version:
41 lines (31 loc) 1.17 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _react = _interopRequireWildcard(require("react")); // eslint-disable-next-line import/no-extraneous-dependencies function useState() { var isMounted = (0, _react.useRef)(false); (0, _react.useEffect)(function () { isMounted.current = true; return function () { isMounted.current = false; }; }, []); var _React$useState = _react["default"].useState.apply(_react["default"], arguments), _React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2), state = _React$useState2[0], setState = _React$useState2[1]; var setStateProxy = function setStateProxy() { if (isMounted.current) { setState.apply(void 0, arguments); } }; return [state, setStateProxy]; } var _default = useState; exports["default"] = _default;