A simple and flexible React utility component for copying texts to the clipboard. Demo and sample code here.
Existing React clipboard libraries are restrictive (e.g. you can only trigger copy on click / you must render a button or a span).
Simple React Clipboard allows you to trigger copy
whenever and however you want, with whatever component that fits your use case.
npm i simple-react-clipboard
The component passed in the render
prop will have the copy
function passed in as a prop.
The copy
function will copy the text
prop to the clipboard.
import React from "react";
import Clipboard from "simple-react-clipboard";
const Demo = () => (
<Clipboard
text={"Copy on Button Click"}
render={({copy}) => <button onClick={copy}>Copy</button>}
/>
)
export default Demo;
Name | Type | Description | Required |
---|---|---|---|
render |
function |
A function that returns a React element. | Y |
text |
string |
The text to be copied when copy is called. |
Y |
props |
object |
props to pass to the component in render |
N |
onSuccess |
function |
Function called when copy succeeds. |
N |
onError |
function |
Function called when copy fails. |
N |
git clone https://github.com/donfour/simple-react-clipboard.git
npm install
npm run dev
npm run test
This package is based on the awesome clipboard.js.