You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
React irá anexar o HTML existente dentro do `domNode`, e assumir a gestão do DOM dentro dele. Um aplicativo completamente construído com React comumente só terá uma única chamada do `hydrateRoot`no seu componente raiz.
32
+
React irá anexar o HTML existente dentro do `domNode`, e assumir a gestão do DOM dentro dele. Um aplicativo completamente construído com React comumente só terá uma única chamada do `hydrateRoot`para seu componente raiz.
33
33
34
34
[Veja mais exemplos abaixo.](#usage)
35
35
@@ -44,7 +44,7 @@ React irá anexar o HTML existente dentro do `domNode`, e assumir a gestão do D
44
44
* <CanaryBadge title="Essa funcionalidade está apenas disponível no canal do Canary" /> **opcional** `onCaughtError`: Callback disparado quando o React intercepta um ero no Error Boundary. Vem com o `error` interceptado pelo Error Boundary, e um objeto `errorInfo` contendo o `componentStack`.
45
45
* <CanaryBadge title="Essa funcionalidade está apenas disponível no canal do Canary" /> **opcional** `onUncaughtError`: Callback disparado quando um erro é lançado e não interceptado por um Error Boundary. Vem com o `error` que foi lançado e um objeto `errorInfo` contendo o `componentStack`.
46
46
* **opcional** `onRecoverableError`: Callback disparado quando o React se recupera automaticamente de erros. Vem com o `error` que o React lançou, e um objeto `errorInfo` contendo o `componentStack`. Alguns erros recuperáveis podem incluir a causa original do erro como `error.cause`.
47
-
* **opcional** `identifierPrefix`: um prefixo de texto que o React usa para IDs gerados por [`useId`.](/reference/react/useId) Útil para evitar conflitos quando múltiplas raizes são usadas na mesma página. Precisa ser o mesmo prefixo usado no servidor.
47
+
* **opcional** `identifierPrefix`: Um prefixo de texto que o React usa para IDs gerados por [`useId`.](/reference/react/useId) Útil para evitar conflitos quando múltiplas raizes são usadas na mesma página. Precisa ser o mesmo prefixo usado no servidor.
48
48
49
49
50
50
#### Retornos {/*returns*/}
@@ -54,15 +54,15 @@ React irá anexar o HTML existente dentro do `domNode`, e assumir a gestão do D
54
54
#### Ressalvas {/*caveats*/}
55
55
56
56
* `hydrateRoot()` espera que o conteúdo renderizado seja idêntico ao conteúdo renderizado pelo servidor. Você deve tratar diferenças como erros e corrigí-las.
57
-
* No modo desenvolvedor, o React avisa sobre as diferenças na hidratação. Não há garantias de que as diferenças de atributos serão corrigidas em caso de incompatibilidades. Isso é importante por questões de performance porque na maioria dos apps, diferenças são raras, e, portanto, validar todas as marcações seria proibitivamente caro.
57
+
* No modo desenvolvedor, o React avisa sobre as diferenças na hidratação. Não há garantias de que as diferenças de atributos serão corrigidas em caso de incompatibilidades. Isso é importante por questões de performance porque na maioria dos aplicativos, diferenças são raras, e, portanto, validar todas as marcações seria proibitivamente caro.
58
58
* Você provavelmente terá apenas uma chamada `hydrateRoot` no seu aplicativo. Se você tiver um framework, ele pode fazer essa chamada para você.
59
59
* Se a sua aplicação é redenrizada pelo cliente sem ter HTML renderizado ainda, usar `hydrateRoot()` não é suportado. Use [`createRoot()`](/reference/react-dom/client/createRoot) alternativamente.
60
60
61
61
---
62
62
63
63
### `root.render(reactNode)` {/*root-render*/}
64
64
65
-
Chame `root.render` para atualizar um compoente React dentro de uma raiz hidratada do React em um elemento do DOM do navegador.
65
+
Chame `root.render` para atualizar um componente React dentro de uma raiz hidratada do React em um elemento do DOM do navegador.
* `reactNode`: Um "nó React" que você quer atualizar. Será frequentemente uma parte de JSX como `<App />`, mas vocẽ pode passar também um elemento React construído com [`createElement()`](/reference/react/createElement), uma string, um número, `null`, or `undefined`.
77
+
* `reactNode`: Um "nó React" que você quer atualizar. Será frequentemente uma parte do JSX como `<App />`, mas vocẽ pode passar também um elemento React construído com [`createElement()`](/reference/react/createElement), uma string, um número, `null`, or `undefined`.
* Se você chamar `root.render` antes do final da hidratação da raiz, React irá limpar todo o conteúdo HTML existente renderizado no servidor e substituirá por todo conteúdo da raiz renderizada no cliente.
86
+
* Se você chamar `root.render` antes do final da hidratação da raiz, o React irá limpar todo o conteúdo HTML existente renderizado no servidor e substituirá por todo conteúdo da raiz renderizada no cliente.
87
87
88
88
---
89
89
@@ -97,9 +97,9 @@ root.unmount();
97
97
98
98
Um aplicativo completamente construído com React usualmente não precisará de nenhuma chamada para `root.unmount`.
99
99
100
-
Isso é mais útil se o nó DOM da raiz do React (ou qualquer dos seus antecessores) poder ser removido do DOM por outro código. Por examplo, imagine um painel de abas do jQuery que remove abas inativas do DOM. Se a aba for removida, tudo dentro dele (incluindo raízes React internas) seria removido do DOM também. Você precisa dizer para o React "parar" de gerenciar os conteúdos das raízes removidas chamando `root.unmount`. Senão, os components dentro da raiz removida não limpará e liberará os recursos como assinaturas.
100
+
Isso é mais útil se o nó DOM da raiz do React (ou qualquer dos seus ascendentes) pode ser removido do DOM por outro código. Por examplo, imagine um painel de abas do jQuery que remove abas inativas do DOM. Se a aba for removida, tudo dentro dela (incluindo raízes React internas) seria removido do DOM também. Você precisa dizer para o React "parar" de gerenciar os conteúdos das raízes removidas chamando `root.unmount`. Senão, os componentes dentro da raiz removida não limpará nem liberará os recursos como assinaturas.
101
101
102
-
Chamar `root.unmount` desmontará todos os componente da raiz e "desconectaráS" o React do nó raiz do DOM, incluindo quaisquer manipuladores de evento ou state na árvore.
102
+
Chamar `root.unmount` desmontará todos os componente da raiz e "desconectará" o React do nó raiz do DOM, incluindo quaisquer manipuladores de evento ou state na árvore.
103
103
104
104
105
105
#### Parâmetros {/*root-unmount-parameters*/}
@@ -115,11 +115,11 @@ Chamar `root.unmount` desmontará todos os componente da raiz e "desconectaráS"
115
115
116
116
* Chamar `root.unmount` desmontará todos os componentes na árvore e "desconectará" o React do nó raiz do DOM.
117
117
118
-
* Depois de chamar `root.unmount` você não pode chamar `root.render` novamente com a raiz. Tentativas de chamar `root.render` com uma raiz desmontada lançará um "Cannot update an unmounted root" erro.
118
+
* Depois de chamar `root.unmount` você não pode chamar `root.render` novamente para a raiz. Tentativas de chamar `root.render` com uma raiz desmontada lançará um "Cannot update an unmounted root" erro.
119
119
120
120
---
121
121
122
-
## Usos {/*usage*/}
122
+
## Utilização {/*usage*/}
123
123
124
124
### Hidratando HTML renderizado pelo servidor {/*hydrating-server-rendered-html*/}
Isso hidratará o HTML do servidor dentro do <CodeStep step={1}>nó DOM do navegador</CodeStep> com o <CodeStep step={2}>componente React</CodeStep> para a sua aplicação. Usualmente, você fará isso uma vez ao iniciar. Se você usa um framework, ele poderá fazer isso para você por trás das cenas.
135
135
136
-
Para hidratar sua aplicação, React "conectará" a lógica dos seus componentes ao HTML gerado no início pelo servidor. Hidratação transforma o snapshot inicial do HTML do servidor em uma aplicação completa e interativa rodando no navegador.
136
+
Para hidratar sua aplicação, React "conectará" a lógica dos seus componentes ao HTML gerado no início pelo servidor. A hidratação transforma o snapshot inicial do HTML do servidor em uma aplicação completa e interativa rodando no navegador.
137
137
138
138
<Sandpack>
139
139
@@ -180,13 +180,13 @@ function Counter() {
180
180
181
181
</Sandpack>
182
182
183
-
Você não precisará chamar `hydrateRoot` novamente ou chamar em mais lugares. Desse ponto em diante, React gerenciará o DOM de sua aplicação. Para atualizar a UI, seu componente irá [usar state](/reference/react/useState) agora.
183
+
Você não precisará chamar `hydrateRoot` novamente ou chamar em mais lugares. Desse ponto em diante, o React gerenciará o DOM de sua aplicação. Para atualizar a UI, seu componente irá [usar state](/reference/react/useState) agora.
184
184
185
185
<Pitfall>
186
186
187
187
A árvore react que você passou para `hydrateRoot` precisa produzir **a mesma saída** que produziu no servidor.
188
188
189
-
Isso é importante para experiência do usuário. O usuário passará algum tempo procurando no HTML gerado pelo servidor antes do seu código JavaScript carregar. A renderização do servidor cria uma ilusão que o aplicativo carregou rápido, mostrando o snapshot HTML da sua saída. Mostrar o conteúdo diferente de repente quebra essa ilusão. Por isso a saída renderizada do servidor precisa ser compatível com a saída inicial renderizada do cliente.
189
+
Isso é importante para experiência do usuário. O usuário passará algum tempo procurando no HTML gerado pelo servidor antes do seu código JavaScript carregar. A renderização do servidor cria uma ilusão que o aplicativo carregou rápido, mostrando o snapshot HTML da sua saída. Mostrar de repente um conteúdo diferente quebra essa ilusão. Por isso a saída renderizada do servidor precisa ser compatível com a saída inicial renderizada do cliente.
190
190
191
191
As causas mais comuns que levam a erros de hidratação incluem:
192
192
@@ -378,11 +378,11 @@ export default function App({counter}) {
378
378
379
379
<Canary>
380
380
381
-
`onUncaughtError` só está disponível no último release do React Canary.
381
+
`onUncaughtError` só está disponível para o último release do React Canary.
382
382
383
383
</Canary>
384
384
385
-
Por padrão, React imprimirá todos os log's de erros não interceptados no console. Para implementar seu prórpio relatório de erros, você pode definir o opcional `onUncaughtError`para raiz:
385
+
Por padrão, o React imprimirá no console todos os log's de erros não interceptados. Para implementar seu prórpio relatório de erros, você pode definir o método opcional `onUncaughtError`da raiz:
A opção <CodeStep step={1}>onUncaughtError</CodeStep> é uma função que é chamada com dois argumentos:
406
+
O método <CodeStep step={1}>onUncaughtError</CodeStep> é uma função que é chamada com dois argumentos:
407
407
408
408
1. O <CodeStep step={2}>error</CodeStep> que é lançado.
409
-
2. um objeto <CodeStep step={3}>errorInfo</CodeStep> que contém o <CodeStep step={4}>componentStack</CodeStep> do erro.
409
+
2. Um objeto <CodeStep step={3}>errorInfo</CodeStep> que contém o <CodeStep step={4}>componentStack</CodeStep> do erro.
410
410
411
-
Você pode usar a opção de raiz `onUncaughtError` para exibir diálogos de erros:
411
+
Você pode usar o método `onUncaughtError` da raiz para exibir diálogos de erros:
412
412
413
413
<Sandpack>
414
414
@@ -630,11 +630,11 @@ export default function App() {
630
630
631
631
<Canary>
632
632
633
-
`onCaughtError` só está disponível na última release do React Canary.
633
+
`onCaughtError` só está disponível para o último release do React Canary.
634
634
635
635
</Canary>
636
636
637
-
Por padrão, React impriirá todos os log's de erros interceptados por um Error Boundary no `console.error`. Para mudar esse comportmento, você pode definir o opcional `onCaughtError`opção de raiz para erros interceptados por [Error Boundary](/reference/react/Component#catching-rendering-errors-with-an-error-boundary):
637
+
Por padrão, React impriirá todos os log's de erros interceptados por um Error Boundary no `console.error`. Para mudar esse comportmento, você pode definir o método opcional `onCaughtError`da raiz para erros interceptados por [Error Boundary](/reference/react/Component#catching-rendering-errors-with-an-error-boundary):
A opção <CodeStep step={1}>onCaughtError</CodeStep> é uma função que possui dois argumentos:
658
+
O método <CodeStep step={1}>onCaughtError</CodeStep> é uma função que possui dois argumentos:
659
659
660
660
1. O <CodeStep step={2}>error</CodeStep> que foi interceptado pelo boundary.
661
-
2. um objeto <CodeStep step={3}>errorInfo</CodeStep> que contém o <CodeStep step={4}>componentStack</CodeStep> do erro.
661
+
2. Um objeto <CodeStep step={3}>errorInfo</CodeStep> que contém o <CodeStep step={4}>componentStack</CodeStep> do erro.
662
662
663
-
Você pode usar a opção da raiz `onCaughtError` para mostrar diálogos de erro ou filtrar erros conhecidos do log:
663
+
Você pode usar o método `onCaughtError` da raiz para mostrar diálogos de erro ou filtrar erros conhecidos do log:
664
664
665
665
<Sandpack>
666
666
@@ -913,9 +913,9 @@ function Throw({error}) {
913
913
914
914
</Sandpack>
915
915
916
-
### Mostrar um diálogo para erros recuperáveis de diferença de hidratação {/*show-a-dialog-for-recoverable-hydration-mismatch-errors*/}
916
+
### Mostrando um diálogo para erros recuperáveis de diferença de hidratação {/*show-a-dialog-for-recoverable-hydration-mismatch-errors*/}
917
917
918
-
Quando o React encontra uma diferença de hidratação, ele automaticamente tentará recuperar renderizando no cliente. Por padrão, o React imprimirá o log de erros de diferença de hidratação no `console.error`. Para mudar esse comportamento, você pode definir o opcional `onRecoverableError` opção da raiz:
918
+
Quando o React encontra uma diferença de hidratação, ele automaticamente tentará recuperar renderizando no cliente. Por padrão, o React imprimirá o log de erros de diferença de hidratação no `console.error`. Para mudar esse comportamento, você pode definir o método opcional `onRecoverableError` da raiz:
A opção <CodeStep step={1}>onRecoverableError</CodeStep> é uma função com dois argumentos:
939
+
O método <CodeStep step={1}>onRecoverableError</CodeStep> é uma função com dois argumentos:
940
940
941
941
1. O <CodeStep step={2}>error</CodeStep> lançado pelo React. Alguns erros podem incluir a causa original como <CodeStep step={3}>error.cause</CodeStep>.
942
942
2. Um objeto <CodeStep step={4}>errorInfo</CodeStep> que contém o <CodeStep step={5}>componentStack</CodeStep> do erro.
943
943
944
-
Você pode usar a opção da raiz `onRecoverableError` para mostrar diálogos de erro para diferenças de hidratação:
944
+
Você pode usar o método `onRecoverableError` da raiz para mostrar diálogos de erro para diferenças de hidratação:
945
945
946
946
<Sandpack>
947
947
@@ -1180,7 +1180,7 @@ function Throw({error}) {
1180
1180
1181
1181
### Estou recebendo esse erro: "You passed a second argument to root.render" {/*im-getting-an-error-you-passed-a-second-argument-to-root-render*/}
1182
1182
1183
-
um erro comum é passar as opções de `hydrateRoot` para `root.render(...)`:
1183
+
Um erro comum é passar as opções de `hydrateRoot` para `root.render(...)`:
0 commit comments