Skip to content
Back to skills

React Useeffect

ASecurity

Melhores práticas de React useEffect da documentação oficial. Use ao escrever/revisar useEffect, useState para valores derivados, busca de dados ou sincronização de estado. Ensina quando NÃO usar Effect e alternativas melhores.

  • 11 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 8, 2026
developmentgoreactapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add artubss/SKILLS-CLAUDE-CODE --skill react-useeffect --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of React Useeffect?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for React Useeffect
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/artubss-react-useeffect/badge)](https://www.skillsdirectory.com/skills/artubss-react-useeffect)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: react-useeffect
description: Melhores práticas de React useEffect da documentação oficial. Use ao escrever/revisar useEffect, useState para valores derivados, busca de dados ou sincronização de estado. Ensina quando NÃO usar Effect e alternativas melhores.
---

# Você Pode Não Precisar de um Effect

Effects são uma **saída de emergência** do React. Eles permitem sincronizar com sistemas externos. Se não houver nenhum sistema externo envolvido, você não deveria precisar de um Effect.

## Referência Rápida

| Situação | NÃO FAÇA | FAÇA |
|-----------|----------|------|
| Estado derivado de props/state | `useState` + `useEffect` | Calcule durante a renderização |
| Cálculos caros | `useEffect` para cache | `useMemo` |
| Resetar estado quando prop muda | `useEffect` com `setState` | Prop `key` |
| Respostas a eventos de usuário | `useEffect` observando state | Event handler direto |
| Notificar pai de mudanças | `useEffect` chamando `onChange` | Chamar no event handler |
| Buscar dados | `useEffect` sem cleanup | `useEffect` com cleanup OU framework |

## Quando Você PRECISA de Effects

- Sincronizar com **sistemas externos** (widgets não-React, APIs do navegador)
- **Inscrições** em stores externos (use `useSyncExternalStore` quando possível)
- **Analytics/logging** que executa porque o componente foi exibido
- **Busca de dados** com cleanup apropriado (ou use mecanismo integrado do framework)

## Quando Você NÃO Precisa de Effects

1. **Transformar dados para renderização** - Calcule no topo do nível, re-executa automaticamente
2. **Lidar com eventos de usuário** - Use event handlers, você sabe exatamente o que aconteceu
3. **Derivar estado** - Apenas compute: `const fullName = firstName + ' ' + lastName`
4. **Encadear atualizações de estado** - Calcule todo o próximo estado no event handler

## Árvore de Decisão

```
Precisa responder a algo?
├── Interação do usuário (clique, submit, arrastar)?
│   └── Use EVENT HANDLER
├── Componente apareceu na tela?
│   └── Use EFFECT (sincronização externa, analytics)
├── Props/state mudou e precisa de valor derivado?
│   └── CALCULE DURANTE A RENDERIZAÇÃO
│       └── Caro? Use useMemo
└── Precisa resetar estado quando prop muda?
    └── Use prop KEY no componente
```

## Orientação Detalhada

- [Anti-Padrões](./anti-patterns.md) - Erros comuns com correções
- [Alternativas Melhores](./alternatives.md) - useMemo, key prop, lifting state, useSyncExternalStore

Files in this skill

  • README.md9.8 KB
  • SKILL.md2.5 KB
  • alternatives.md5.7 KB
  • anti-patterns.md6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in development →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.