useCopyToClipboard
Hook para copiar texto para a área de transferência com feedback visual.
Visão Geral
O useCopyToClipboard é um hook que permite copiar texto para a área de transferência do navegador, fornecendo feedback visual através do estado isCopied.
Exemplo de Uso
import { useCopyToClipboard } from "@convertcompany/ui/hooks";
import { Button } from "@convertcompany/ui";
export default function Example() {
const { isCopied, handleCopy } = useCopyToClipboard({ text: "Texto para copiar" });
return <Button onClick={handleCopy}>{isCopied ? "Copiado!" : "Copiar"}</Button>;
}
Retorno
| Propriedade | Tipo |
|---|---|
| isCopiedIndica se o texto foi copiado recentemente. | boolean |
| handleCopyFunção que executa a cópia do texto para a área de transferência. | () => void |
Parâmetros
| Propriedade | Tipo |
|---|---|
| textTexto a ser copiado para a área de transferência. | string |
Comportamento
- O estado
isCopiedfica comotruepor 2 segundos após a cópia bem-sucedida. - Caso a cópia falhe, um erro será logado no console.
Considerações
- Requer que o navegador permita o uso da API
navigator.clipboard. - Ideal para uso em botões ou ações rápidas de cópia.