Copy to clipboard async

JavaScript, Browser, String, Promise · Jan 11, 2022

Copies a string to the clipboard, returning a promise that resolves when the clipboard's contents have been updated.

  • Check if the Clipboard API is available. Use an if statement to ensure Navigator, Navigator.clipboard and Navigator.clipboard.writeText are truthy.
  • Use Clipboard.writeText() to write the given value, str, to the clipboard.
  • Return the result of Clipboard.writeText(), which is a promise that resolves when the clipboard's contents have been updated.
  • In case that the Clipboard API is not available, use Promise.reject() to reject with an appropriate message.
  • Note: If you need to support older browsers, you might want to use Document.execCommand() instead. You can find out more about it in the copyToClipboard snippet.
const copyToClipboardAsync = str => {
  if (navigator && navigator.clipboard && navigator.clipboard.writeText)
    return navigator.clipboard.writeText(str);
  return Promise.reject('The Clipboard API is not available.');
copyToClipboardAsync('Lorem ipsum'); // 'Lorem ipsum' copied to clipboard.

More like this

  • Copy to clipboard

    Copies a string to the clipboard. Only works as a result of user action (i.e. inside a click event listener).

    JavaScript, Browser · Jan 11, 2022

  • Run function asynchronously

    Runs a function in a separate thread by using a Web Worker.

    JavaScript, Browser · Oct 22, 2020

  • Calculate SHA-256 hash (browser)

    Creates a hash for a value using the SHA-256 algorithm. Returns a promise.

    JavaScript, Browser · Oct 13, 2021