51 items
React.memo Won't Stop Context Re-renders
Code QuizNesting and Overriding Providers
Slides / VideoCustom Consumer Hook for Context
Slides / VideoCreating a Custom Provider Component
Slides / VideoContext with useReducer
Slides / VideoMemoizing Context Provider Values
Slides / VideoSplitting Contexts to Minimize Re-renders
Slides / VideoProviding Context Values with Provider
Slides / VideoCreating Context with createContext
Slides / VideoThe Prop Drilling Problem
Slides / VideoRe-rendering of Context Consumers
Slides / VideoDefault Values in createContext
Slides / VideoPassing Updaters Through Context
Code QuizUpdating Context via State
Code QuizContext.Consumer Render Prop
Code QuizNested Providers and Shadowing
Code QuizReading Context Outside the Provider
Code QuizDefault Value Without a Provider
Code QuizProviding a Context Value
Code QuizCreating a Context
Code QuizInverted Guard in Custom Context Hook
Code QuizSwapped State and Dispatch Contexts
Code QuizReducer Missing Default Case
Code QuizInline Context Value Re-renders
Code QuizContext.Consumer Render Prop
QuizMemoizing Context Value
QuizContext Value Identity Pitfall
QuizOverriding Context Values
QuizNested and Multiple Providers
QuizContext with useReducer
QuizSplitting Contexts
QuizProviding Context Values
QuizCreating a Context
QuizdisplayName for DevTools
QuizWhen to Use Context
QuizDefault Value in createContext
QuizContext Re-render Behavior
QuizCustom Hook for Context
QuizContext Limitations
FlashcardDefault Value in createContext
FlashcardRe-render on Value Change
FlashcardThe value Prop
FlashcardProviding a Context
FlashcardMemoizing Context Value
FlashcardSplitting Contexts
FlashcardCreating a Context
FlashcardCustom useContext Hook
FlashcardContext.Consumer Render Prop
FlashcardContext with useReducer
FlashcardContext displayName
FlashcardNesting and Overriding Providers
FlashcardSwapped State and Dispatch Contexts
Find the mix-up when splitting state and dispatch into two separate contexts.
const StateContext = createContext();
const DispatchContext = createContext();
function TodoProvider({ children }) {
const [state, dispatch] = useReducer(reducer, []);
return (
<StateContext.Provider value={dispatch}>
<DispatchContext.Provider value={state}>
{children}
</DispatchContext.Provider>
</StateContext.Provider>
);
}What is the bug in this provider setup?