Files
30-seconds-of-code/react/snippets/use-component-will-unmount.md
Angelos Chalaris 462322f885 Prepare for merge
2023-05-01 22:56:37 +03:00

37 lines
859 B
Markdown

---
title: React useComponentWillUnmount hook
type: snippet
tags: [hooks,effect]
author: chalarangelo
cover: rocky-beach-3
dateModified: 2021-10-13T19:29:39+02:00
---
Executes a callback immediately before a component is unmounted and destroyed.
- Use the `useEffect()` hook with an empty array as the second argument. Return the provided callback to be executed only once before cleanup.
- Behaves like the `componentWillUnmount()` lifecycle method of class components.
```jsx
const useComponentWillUnmount = onUnmountHandler => {
React.useEffect(
() => () => {
onUnmountHandler();
},
[]
);
};
```
```jsx
const Unmounter = () => {
useComponentWillUnmount(() => console.log('Component will unmount'));
return <div>Check the console!</div>;
};
ReactDOM.createRoot(document.getElementById('root')).render(
<Unmounter />
);
```