useCopyToClipboard 흑은 사용자가 텍스트를 클립보드에 복사할 수 있도록 돕는 훅입니다. 이 훅은 클립보드에 복사하는 함수와 가장 최근에 복사된 텍스트를 추적하는 상태를 제공합니다.
type CopiedValue = string | null;
type CopyFn = (text: string) => Promise<boolean>;
const useCopyToClipboard: () => {
copiedText: CopiedValue;
copy: CopyFn;
};
import { useCopyToClipboard } from '@hyunjin/hooks';
const Component = () => {
const { copiedText, copy } = useCopyToClipboard();
const textToCopy = '이 텍스트를 클립보드에 복사합니다.';
const handleCopy = async () => {
const success = await copy(textToCopy);
if (success) {
console.log('텍스트가 성공적으로 복사되었습니다.');
} else {
console.error('텍스트 복사에 실패했습니다.');
}
};
return (
<div>
<p>다음 버튼을 클릭하면 텍스트가 클립보드에 복사됩니다:</p>
<button onClick={handleCopy}>텍스트 복사하기</button>
{copiedText && <p>복사된 텍스트: {copiedText}</p>}
</div>
);
};