Middle+
What can be the cause of re-rendering in React?
sobes.tech AI
Answer from AI
Re-rendering in React can occur for several reasons:
- Changing the component's state via
setStateoruseStatehooks. - Changing the props passed to the component.
- Changing the context (Context API) if the component subscribes to a context.
- Parent component re-renders, and the child component receives new props or simply re-renders.
- Changing the component's key, which causes React to recreate the component.
For example, if you have a component:
function MyComponent({ count }) {
const [value, setValue] = React.useState(0);
React.useEffect(() => {
// something happens when count changes
}, [count]);
return <div>{count} - {value}</div>;
}
If count changes, the component will re-render. Also, calling setValue inside the component will trigger a re-render.
To optimize re-renders, you can use React.memo, useMemo, useCallback, and properly manage state and props.