Skip to content

Commit 5c28e38

Browse files
docs: translate use-memo.md to Português (Brasil) (#1224)
Co-authored-by: translate-react-bot[bot] <251169733+translate-react-bot[bot]@users.noreply.github.com>
1 parent 4b12bb6 commit 5c28e38

1 file changed

Lines changed: 25 additions & 25 deletions

File tree

  • src/content/reference/eslint-plugin-react-hooks/lints

src/content/reference/eslint-plugin-react-hooks/lints/use-memo.md

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -4,36 +4,36 @@ title: use-memo
44

55
<Intro>
66

7-
Validates that the `useMemo` hook is used with a return value. See [`useMemo` docs](/reference/react/useMemo) for more information.
7+
Valida que o hook `useMemo` é usado com um valor de retorno. Veja a [documentação do `useMemo`](/reference/react/useMemo) para mais informações.
88

99
</Intro>
1010

11-
## Rule Details {/*rule-details*/}
11+
## Detalhes da Regra {/*rule-details*/}
1212

13-
`useMemo` is for computing and caching expensive values, not for side effects. Without a return value, `useMemo` returns `undefined`, which defeats its purpose and likely indicates you're using the wrong hook.
13+
`useMemo` serve para computar e cachear valores custosos, não para efeitos colaterais. Sem um valor de retorno, `useMemo` retorna `undefined`, o que frustra seu propósito e provavelmente indica que você está usando o hook errado.
1414

15-
### Invalid {/*invalid*/}
15+
### Inválido {/*invalid*/}
1616

17-
Examples of incorrect code for this rule:
17+
Exemplos de código incorreto para esta regra:
1818

1919
```js {expectedErrors: {'react-compiler': [3]}}
20-
//No return value
20+
//Sem valor de retorno
2121
function Component({ data }) {
2222
const processed = useMemo(() => {
2323
data.forEach(item => console.log(item));
24-
// Missing return!
24+
// Falta o retorno!
2525
}, [data]);
2626

27-
return <div>{processed}</div>; // Always undefined
27+
return <div>{processed}</div>; // Sempre undefined
2828
}
2929
```
3030

31-
### Valid {/*valid*/}
31+
### Válido {/*valid*/}
3232

33-
Examples of correct code for this rule:
33+
Exemplos de código correto para esta regra:
3434

3535
```js
36-
//Returns computed value
36+
//Retorna valor computado
3737
function Component({ data }) {
3838
const processed = useMemo(() => {
3939
return data.map(item => item * 2);
@@ -43,52 +43,52 @@ function Component({ data }) {
4343
}
4444
```
4545

46-
## Troubleshooting {/*troubleshooting*/}
46+
## Solução de Problemas {/*troubleshooting*/}
4747

48-
### I need to run side effects when dependencies change {/*side-effects*/}
48+
### Preciso executar efeitos colaterais quando as dependências mudam {/*side-effects*/}
4949

50-
You might try to use `useMemo` for side effects:
50+
Você pode tentar usar `useMemo` para efeitos colaterais:
5151

5252
{/* TODO(@poteto) fix compiler validation to check for unassigned useMemos */}
5353
```js {expectedErrors: {'react-compiler': [4]}}
54-
//Wrong: Side effects in useMemo
54+
//Errado: Efeitos colaterais em useMemo
5555
function Component({user}) {
56-
// No return value, just side effect
56+
// Sem valor de retorno, apenas efeito colateral
5757
useMemo(() => {
5858
analytics.track('UserViewed', {userId: user.id});
5959
}, [user.id]);
6060

61-
// Not assigned to a variable
61+
// Não atribuído a uma variável
6262
useMemo(() => {
6363
return analytics.track('UserViewed', {userId: user.id});
6464
}, [user.id]);
6565
}
6666
```
6767

68-
If the side effect needs to happen in response to user interaction, it's best to colocate the side effect with the event:
68+
Se o efeito colateral precisar acontecer em resposta a uma interação do usuário, é melhor colocar o efeito colateral junto ao evento:
6969

7070
```js
71-
//Good: Side effects in event handlers
71+
//Bom: Efeitos colaterais em manipuladores de eventos
7272
function Component({user}) {
7373
const handleClick = () => {
7474
analytics.track('ButtonClicked', {userId: user.id});
75-
// Other click logic...
75+
// Outra lógica de clique...
7676
};
7777

78-
return <button onClick={handleClick}>Click me</button>;
78+
return <button onClick={handleClick}>Clique em mim</button>;
7979
}
8080
```
8181

82-
If the side effect sychronizes React state with some external state (or vice versa), use `useEffect`:
82+
Se o efeito colateral sincroniza o estado do React com algum estado externo (ou vice-versa), use `useEffect`:
8383

8484
```js
85-
//Good: Synchronization in useEffect
85+
//Bom: Sincronização em useEffect
8686
function Component({theme}) {
8787
useEffect(() => {
8888
localStorage.setItem('preferredTheme', theme);
8989
document.body.className = theme;
9090
}, [theme]);
9191

92-
return <div>Current theme: {theme}</div>;
92+
return <div>Tema atual: {theme}</div>;
9393
}
94-
```
94+
```

0 commit comments

Comments
 (0)