🔗
Hooks

useSyncExternalStore

Hook para integrar stores externos (Redux, Zustand) com Concurrent React sem tearing.

Definição

useSyncExternalStore é o hook oficial para subscribar em stores externos (não-React) garantindo consistência em Concurrent Mode. Substitui useEffect+useState para subscriptions. Usado internamente pelo Redux, Zustand e outras libs modernas.

🔴 Problema

Em Concurrent Mode, renders podem ser interrompidos. Stores externos (subscribe-based) podem causar tearing — UI mostrando estados diferentes em momentos diferentes do render.

Solução

useSyncExternalStore garante leitura síncrona e consistente do store, sem tearing. API: useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot).

💡 Dica Senior

Você raramente vai usar diretamente — Zustand, Redux Toolkit, etc já usam internamente. Use quando criar lib de state management ou subscribar APIs nativas (matchMedia, online/offline).

Perguntas de Entrevista

30/48