Skip to content

Latest commit

Β 

History

History
32 lines (25 loc) Β· 1019 Bytes

useCopyToClipboard.md

File metadata and controls

32 lines (25 loc) Β· 1019 Bytes

useCopyToClipboard

Copy text to a user's clipboard.

Usage

const Demo = () => {
  const [text, setText] = React.useState('');
  const [state, copyToClipboard] = useCopyToClipboard();

  return (
    <div>
      <input value={text} onChange={e => setText(e.target.value)} />
      <button type="button" onClick={() => copyToClipboard(text)}>copy text</button>
      {state.error
        ? <p>Unable to copy value: {state.error.message}</p>
        : state.value && <p>Copied {state.value}</p>}
    </div>
  )
}

Reference

const [{value, error, noUserInteraction}, copyToClipboard] = useCopyToClipboard();
  • value β€” value that was copied to clipboard, undefined when nothing was copied.
  • error β€” caught error when trying to copy to clipboard.
  • noUserInteraction β€” boolean indicating if user interaction was required to copy the value to clipboard to expose full API from underlying copy-to-clipboard library.