linkmore-design
Version:
π πlmη»δ»ΆεΊγπ
26 lines (25 loc) β’ 941 B
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = require("react");
var _useForceUpdate = _interopRequireDefault(require("../../_util/hooks/useForceUpdate"));
var _responsiveObserve = _interopRequireDefault(require("../../_util/responsiveObserve"));
function useBreakpoint(refreshOnChange = true) {
const screensRef = (0, _react.useRef)({});
const forceUpdate = (0, _useForceUpdate.default)();
(0, _react.useEffect)(() => {
const token = _responsiveObserve.default.subscribe(supportScreens => {
screensRef.current = supportScreens;
if (refreshOnChange) {
forceUpdate();
}
});
return () => _responsiveObserve.default.unsubscribe(token);
}, []);
return screensRef.current;
}
var _default = useBreakpoint;
exports.default = _default;