forwardRef Encaminhamento de Refs
Última atualização: 2026-11-03
forwardRef Encaminhamento de Refs
Componentes de função não recebem um ref por padrão. forwardRef encaminha o ref passado pelo pai para um nó do DOM dentro do componente, para que componentes encapsulados como uma entrada personalizada ou um botão possam ser focados e medidos como um elemento nativo. O React 19 aceita uma prop ref diretamente, mas versões anteriores precisam de forwardRef. O ref precisa parar em um elemento DOM real, porque encaminhá-lo para um componente comum que não encaminha de novo deixa o pai sem nada.
| Grupo | Efeitos e Desempenho |
|---|---|
| Tipo | API |
| Desde | React 16.3 |
ℹ️ Informação O editor transpila JSX para JavaScript e renderiza a UI real na sandbox; os componentes são montados automaticamente — sem render manual.
📝 Sintaxe
const FancyInput = forwardRef(function FancyInput(props, ref) {
return <input ref={ref} {...props} /> // attach it to the real DOM
})
// usage: <FancyInput ref={inputRef} />
⚙️ Parâmetros
| render function | Uma função no formato (props, ref) => JSX. O segundo argumento é o ref passado pelo pai, e deve ser anexado a um nó DOM real ou a um componente que o encaminhe adiante. |
|---|
Retorna:Retorna um novo componente capaz de encaminhar um ref: ref.current no pai apontará para o nó ao qual a função de renderização o anexou.
▶ Exemplo
O exemplo roda direto: renderiza automaticamente ao expandir e edições valem na hora.
Saída:
Após o clique, a entrada com borda azul é focada e seu conteúdo é limpo — o ref atravessou a embalagem do FancyInput e alcançou o input real dentro dela.