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
Hooks are defined using JavaScript functions, but they represent a special type of reusable UI logic with restrictions on where they can be called.
6
+
Os Hooks são definidos usando funções JavaScript, mas representam um tipo especial de lógica de UI reutilizável com restrições sobre onde podem ser chamados.
7
7
</Intro>
8
8
9
9
<InlineToc />
10
10
11
11
---
12
12
13
-
## Only call Hooks at the top level {/*only-call-hooks-at-the-top-level*/}
13
+
## Chame Hooks apenas no nível superior {/*only-call-hooks-at-the-top-level*/}
14
14
15
-
Functions whose names start with`use`are called [*Hooks*](/reference/react)in React.
15
+
Funções cujos nomes começam com`use`são chamadas de [*Hooks*](/reference/react)no React.
16
16
17
-
**Don’t call Hooks inside loops, conditions, nested functions, or `try`/`catch`/`finally` blocks.**Instead, always use Hooks at the top level of your React function, before any early returns. You can only call Hooks while React is rendering a function component:
17
+
**Não chame Hooks dentro de loops, condições, funções aninhadas ou blocos `try`/`catch`/`finally`.**Em vez disso, sempre use Hooks no nível superior da sua função React, antes de quaisquer retornos antecipados. Você só pode chamar Hooks enquanto o React estiver renderizando um componente de função:
18
18
19
-
* ✅ Call them at the top level in the body of a [function component](/learn/your-first-component).
20
-
* ✅ Call them at the top level in the body of a [custom Hook](/learn/reusing-logic-with-custom-hooks).
19
+
* ✅ Chame-os no nível superior no corpo de um [componente de função](/learn/your-first-component).
20
+
* ✅ Chame-os no nível superior no corpo de um [Hook personalizado](/learn/reusing-logic-with-custom-hooks).
21
21
22
22
```js{2-3,8-9}
23
23
function Counter() {
24
-
// ✅ Good: top-level in a function component
24
+
// ✅ Bom: nível superior em um componente de função
// 🔴 Ruim: dentro de um bloco try/catch/finally (para corrigir, mova para fora!)
101
101
const [x, setX] = useState(0);
102
102
} catch {
103
103
const [x, setX] = useState(1);
104
104
}
105
105
}
106
106
```
107
107
108
-
You can use the[`eslint-plugin-react-hooks` plugin](https://www.npmjs.com/package/eslint-plugin-react-hooks)to catch these mistakes.
108
+
Você pode usar o[`eslint-plugin-react-hooks` plugin](https://www.npmjs.com/package/eslint-plugin-react-hooks)para capturar esses erros.
109
109
110
110
<Note>
111
111
112
-
[Custom Hooks](/learn/reusing-logic-with-custom-hooks)*may* call other Hooks (that's their whole purpose). This works because custom Hooks are also supposed to only be called while a function component is rendering.
112
+
[Hooks personalizados](/learn/reusing-logic-with-custom-hooks)*podem* chamar outros Hooks (esse é todo o seu propósito). Isso funciona porque os Hooks personalizados também devem ser chamados apenas enquanto um componente de função está sendo renderizado.
113
113
114
114
</Note>
115
115
116
116
---
117
117
118
-
## Only call Hooks from React functions {/*only-call-hooks-from-react-functions*/}
118
+
## Chame Hooks apenas de funções React {/*only-call-hooks-from-react-functions*/}
119
119
120
-
Don’t call Hooks from regular JavaScript functions. Instead, you can:
120
+
Não chame Hooks de funções JavaScript regulares. Em vez disso, você pode:
121
121
122
-
✅ Call Hooks from React function components.
123
-
✅ Call Hooks from [custom Hooks](/learn/reusing-logic-with-custom-hooks#extracting-your-own-custom-hook-from-a-component).
122
+
✅ Chamar Hooks de componentes de função React.
123
+
✅ Chamar Hooks de [Hooks personalizados](/learn/reusing-logic-with-custom-hooks#extracting-your-own-custom-hook-from-a-component).
124
124
125
-
By following this rule, you ensure that all stateful logic in a component is clearly visible from its source code.
125
+
Seguindo essa regra, você garante que toda a lógica com estado em um componente seja claramente visível a partir do seu código fonte.
0 commit comments