Carregando
Resposta direta: useOptimistic melhora UX percebida — sempre planeje rollback quando o server discordar.
Um novo hook do React para criar interfaces otimistas de forma simples e elegante. Impressione o usuário mesmo com conexões lentas.
É uma técnica que melhora a experiência do usuário mostrando o sucesso de uma ação imediatamente, mesmo antes da resposta do servidor.
Por que aplicar interfaces otimistas nas suas aplicações React
Melhora percepção de performance mesmo em conexões lentas
Gerencie estados provisórios com poucas linhas de código
Menos frustração, mais fluidez na interface
import { useOptimistic } from "react"
function CommentForm() {
const [comments, setComment] = useOptimistic([],
(prev, next) => [...prev, next]
)
const handleSubmit = async (text) => {
setComment({ text })
await fetch("/api/comments", { method: "POST", body: text })
}
return (
<form onSubmit={e => {
e.preventDefault()
handleSubmit(e.target.text.value)
}}>
<input name="text" />
<button type="submit">Enviar</button>
<ul>
{comments.map((c, i) => <li key={i}>{c.text}</li>)}
</ul>
</form>
)
}Leitura relacionada: Curso React · Curso Next.js · shadcn tutorial · Cursos.
Ações frequentes com alta chance de sucesso (like, rename).
Complementa. Erro ainda precisa UI.
Confira a versão do React do seu app.
Otimismo sem reconciliar estado do servidor.
Continue: Curso React · Curso Next.js · shadcn tutorial · Cursos.