13 lines
303 B
TypeScript
13 lines
303 B
TypeScript
import { useRef, useEffect } from "react";
|
|
|
|
const useUnmount = (fn: () => any): void => {
|
|
const fnRef = useRef(fn);
|
|
|
|
// update the ref each render so if it change the newest callback will be invoked
|
|
fnRef.current = fn;
|
|
|
|
useEffect(() => () => fnRef.current(), []);
|
|
};
|
|
|
|
export default useUnmount;
|