diff --git a/snippets/useComponentWillUnmount.md b/snippets/useComponentWillUnmount.md new file mode 100644 index 000000000..737872e67 --- /dev/null +++ b/snippets/useComponentWillUnmount.md @@ -0,0 +1,26 @@ +--- +title: useComponentWillUnmount +tags: hooks,effect,beginner +--- + +A hook that executes a callback immediately before a component is unmounted and destroyed. + +- Use `React.useEffect()` with an empty array as the second argument and return the provided callback to be executed only once before cleanup. + +```jsx +const useComponentWillUnmount = onUnmountHandler => { + React.useEffect(() => () => { + onUnmountHandler() + }, []); +} +``` + +```jsx +const Unmounter = () => { + useComponentWillUnmount(() => console.log('Component will unmount')); + + return
Check the console!
; +} + +ReactDOM.render(, document.getElementById('root')); +```