rsuite
Version:
A suite of react components
20 lines (19 loc) • 654 B
JavaScript
'use client';
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = void 0;
exports.useWillUnmount = useWillUnmount;
var _useUpdatedRef = _interopRequireDefault(require("./useUpdatedRef"));
var _react = require("react");
/**
* Attach a callback that fires when a component unmounts
*
* @param fn Handler to run when the component unmounts
* @category effects
*/
function useWillUnmount(fn) {
const onUnmount = (0, _useUpdatedRef.default)(fn);
(0, _react.useEffect)(() => () => onUnmount.current(), []);
}
var _default = exports.default = useWillUnmount;