ReactAdvanced#context#performance

How do you avoid unnecessary re-renders from context?

Split context by concern, memoize the provider value, and keep rapidly changing values out of widely consumed contexts, since every consumer re-renders when the value identity changes.

Example
const value = useMemo(() => ({ user, logout }), [user, logout]);
<AuthCtx.Provider value={value}>{children}</AuthCtx.Provider>

Related Questions

1
ReactBeginner#fundamentals

What is React and why use it?

Open
2
ReactBeginner#jsx

What is JSX?

Open
3
ReactBeginner#props#state

Difference between props and state?

Open