Dialog
Modal para formulários curtos ou detalhes focados.
Sobreposições e menus
Carregando demonstração…
Código da demo
"use client";
import { Button } from "@/components/ui/button";
import {
Dialog,
DialogClose,
DialogContent,
DialogDescription,
DialogFooter,
DialogHeader,
DialogTitle,
DialogTrigger,
} from "@/components/ui/dialog";
import { Input } from "@/components/ui/input";
import { Label } from "@/components/ui/label";
export function Demo() {
return (
<Dialog>
<DialogTrigger asChild>
<Button>Abrir diálogo</Button>
</DialogTrigger>
<DialogContent>
<DialogHeader>
<DialogTitle>Editar perfil</DialogTitle>
<DialogDescription>
Altere o nome localmente. Esc ou overlay fecham.
</DialogDescription>
</DialogHeader>
<div className="grid gap-fe-3 py-fe-2">
<Label htmlFor="name">Nome</Label>
<Input id="name" defaultValue="Rafa" />
</div>
<DialogFooter>
<DialogClose asChild>
<Button variant="outline">Cancelar</Button>
</DialogClose>
<Button>Salvar</Button>
</DialogFooter>
</DialogContent>
</Dialog>
);
}Use
- Decisão curta que bloqueia o fluxo: editar um campo, confirmar.
- Título claro e saída explícita: Esc, × e Cancelar.
Não use
- Não use para confirmar exclusão: use AlertDialog.
- Não use para conteúdo longo: use Sheet ou uma página.
- Não abra um Dialog dentro de outro.
- Acessibilidade
- Title obrigatório; Esc/overlay fecham; foco preso.
- Importar
import { Dialog, DialogTrigger, DialogContent, DialogTitle } from "@financeequity/ui/dialog"Neste repositório:
import { Dialog, DialogTrigger, DialogContent, DialogTitle } from "@/components/ui/dialog"- Dependências
- radix-ui