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
Copy file name to clipboardExpand all lines: src/content/reference/react-compiler/directives/use-no-memo.md
+18-19Lines changed: 18 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,8 +1,7 @@
1
1
---
2
-
title: "use no memo"
3
-
titleForTitleTag: "Diretiva 'use no memo'"
2
+
title: "useMemo"
3
+
titleForTitleTag: "'use no memo' directive"
4
4
---
5
-
6
5
<Intro>
7
6
8
7
`"use no memo"` impede que uma função seja otimizada pelo React Compiler.
@@ -17,7 +16,7 @@ titleForTitleTag: "Diretiva 'use no memo'"
17
16
18
17
### `"use no memo"` {/*use-no-memo*/}
19
18
20
-
Adicione `"use no memo"` no início de uma função para impedir a otimização do React Compiler.
19
+
Adicione `"use no memo"` no início de uma função para impedir a otimização pelo React Compiler.
21
20
22
21
```js {1}
23
22
functionMyComponent() {
@@ -26,32 +25,32 @@ function MyComponent() {
26
25
}
27
26
```
28
27
29
-
Quando uma função contém `"use no memo"`, o React Compiler a ignorará completamente durante a otimização. Isso é útil como uma saída de emergência temporária ao depurar ou ao lidar com código que não funciona corretamente com o compilador.
28
+
Quando uma função contém `"use no memo"`, o React Compiler a ignorará completamente durante a otimização. Isso é útil como uma saída temporária ao depurar ou ao lidar com código que não funciona corretamente com o compilador.
30
29
31
30
#### Ressalvas {/*caveats*/}
32
31
33
-
*`"use no memo"` deve estar no início do corpo de uma função, antes de quaisquer imports ou outro código (comentários são OK).
34
-
* A diretiva deve ser escrita com aspas duplas ou simples, não crases.
32
+
*`"use no memo"` deve estar no início do corpo da função, antes de quaisquer imports ou outro código (comentários são permitidos).
33
+
* A diretiva deve ser escrita com aspas duplas ou simples, não com crases.
35
34
* A diretiva deve corresponder exatamente a `"use no memo"` ou seu alias `"use no forget"`.
36
35
* Esta diretiva tem precedência sobre todos os modos de compilação e outras diretivas.
37
36
* Destina-se a ser uma ferramenta de depuração temporária, não uma solução permanente.
38
37
39
38
### Como `"use no memo"` desabilita a otimização {/*how-use-no-memo-opts-out*/}
40
39
41
-
O React Compiler analisa seu código no momento da compilação para aplicar otimizações. `"use no memo"` cria um limite explícito que diz ao compilador para ignorar uma função inteiramente.
40
+
O React Compiler analisa seu código em tempo de compilação para aplicar otimizações. `"use no memo"` cria um limite explícito que instrui o compilador a ignorar uma função inteiramente.
42
41
43
42
Esta diretiva tem precedência sobre todas as outras configurações:
44
43
* No modo `all`: A função é ignorada apesar da configuração global
45
-
* No modo `infer`: A função é ignorada mesmo que a heurística a otimize
44
+
* No modo `infer`: A função é ignorada mesmo que heurísticas a otimizassem
46
45
47
-
O compilador trata essas funções como se o React Compiler não estivesse habilitado, deixando-as exatamente como foram escritas.
46
+
O compilador trata essas funções como se o React Compiler não estivesse habilitado, deixando-as exatamente como escritas.
48
47
49
48
### Quando usar `"use no memo"` {/*when-to-use*/}
50
49
51
50
`"use no memo"` deve ser usado com moderação e temporariamente. Cenários comuns incluem:
52
51
53
52
#### Depurando problemas do compilador {/*debugging-compiler*/}
54
-
Quando você suspeitar que o compilador está causando problemas, desabilite temporariamente a otimização para isolar o problema:
53
+
Quando você suspeita que o compilador está causando problemas, desabilite temporariamente a otimização para isolar o problema:
55
54
56
55
```js
57
56
functionProblematicComponent({ data }) {
@@ -62,7 +61,7 @@ function ProblematicComponent({ data }) {
62
61
}
63
62
```
64
63
65
-
#### Integração de bibliotecas de terceiros {/*third-party*/}
64
+
#### Integração com bibliotecas de terceiros {/*third-party*/}
66
65
Ao integrar com bibliotecas que podem não ser compatíveis com o compilador:
67
66
68
67
```js
@@ -87,7 +86,7 @@ function MyComponent() {
87
86
}
88
87
```
89
88
90
-
A diretiva também pode ser colocada no topo de um arquivo para afetar todas as funções naquele módulo:
89
+
A diretiva também pode ser colocada no topo de um arquivo para afetar todas as funções nesse módulo:
91
90
92
91
```js
93
92
"use no memo";
@@ -101,7 +100,7 @@ A diretiva também pode ser colocada no topo de um arquivo para afetar todas as
101
100
102
101
## Solução de problemas {/*troubleshooting*/}
103
102
104
-
### Diretiva não impedindo a compilação {/*not-preventing*/}
103
+
### Diretiva não impede a compilação {/*not-preventing*/}
105
104
106
105
Se `"use no memo"` não estiver funcionando:
107
106
@@ -121,16 +120,16 @@ function Component() {
121
120
122
121
Verifique também:
123
122
* Ortografia - deve ser exatamente `"use no memo"`
124
-
* Aspas - deve usar aspas simples ou duplas, não crases
123
+
* Aspas - devem ser usadas aspas simples ou duplas, não crases
125
124
126
125
### Melhores práticas {/*best-practices*/}
127
126
128
-
**Sempre documente o porquê** você está desabilitando a otimização:
127
+
**Sempre documente o motivo** pelo qual você está desabilitando a otimização:
129
128
130
129
```js
131
130
// ✅ Bom - explicação clara e rastreamento
132
131
functionDataProcessor() {
133
-
"use no memo"; // TODO: Remover após corrigir a violação da regra do react
132
+
"use no memo"; // TODO: Remover após corrigir a violação da regra do React
134
133
// ...
135
134
}
136
135
@@ -143,5 +142,5 @@ function Mystery() {
143
142
144
143
### Veja também {/*see-also*/}
145
144
146
-
*[`"use memo"`](/reference/react-compiler/directives/use-memo) - Optar pela compilação
147
-
*[React Compiler](/learn/react-compiler) - Guia de primeiros passos
145
+
*[`"use memo"`](/reference/react-compiler/directives/use-memo) - Habilita a compilação
146
+
*[React Compiler](/learn/react-compiler) - Guia de introdução
0 commit comments