# useEffectOnce Hook `useEffectOnce` is a custom hook in React designed to mimic the behavior of `componentDidMount` and `componentWillUnmount` lifecycle methods in class components. It's a modified version of `useEffect` that runs only once when the component mounts. ## Features - **Single Execution:** The hook executes the provided effect function once upon the component's initial render. - **Cleanup Capability:** It supports an optional cleanup function, returned from the effect, which is called when the component unmounts. - **SSR Compatibility:** As an extension of `useEffect`, it is naturally compatible with server-side rendering environments. ## Usage ```typescript import React from 'react'; import { useEffectOnce } from '@crux-kit/hooks'; const Component = () => { const [fibonacciSequence, setFibonacciSequence] = useState([]); const calculateFibonacci = (n) => { let sequence = [0, 1]; for (let i = 2; i < n; i++) { sequence[i] = sequence[i - 1] + sequence[i - 2]; } return sequence.slice(0, n); }; useEffectOnce(() => { const sequence = calculateFibonacci(5); setFibonacciSequence(sequence); }); return (
First {5} numbers in the Fibonacci sequence: