最近写了一个基于clipboard.js的复制组件。 组件化复制文本和复制目标元素中的元素css
下面开始介绍一下react
#react-clipboardjs-copygit
一个基于clipboard.js
的React复制组件github
npm install --save react-clipboardjs-copy
复制代码
import React from 'react';
import {ReactClipboard} from 'react-clipboardjs-copy'
import './App.css';
export default class App extends React.Component {
render () {
return (
<div className="App"> <section className="app-item"> <div className="app-item-desc">copy text</div> <ReactClipboard text='copy text' onSuccess={(e) => console.log(e)} onError={(e) => console.log(e)}> <button>Copy</button> </ReactClipboard> </section> </div>
)
}
}
复制代码
<ReactClipboard
target={'.copy-target'}
selection={true}
onSuccess={(e) => console.log(e)}
onError={(e) => console.log(e)}
>
<button>Copy</button>
</ReactClipboard>
复制代码
text
- string React组件要复制的内容,其对应 clipboard.js
的 data-clipboard-text
属性。npm
target
- string React组件要复制的目标元素. 其对应 clipboard.js
的 data-clipboard-target
属性。app
action
- string React组件的行为. 其对应 clipboard.js
的 data-clipboard-action
属性。可是目前只支持复制(默认: 'copy')。组件化
selection
- boolean 设置是否清除复制的选中. 其对应 clipboard.js
的事件 e.clearSelection()
. (默认: true,不清除)ui
onSuccess
- function 复制成功回调.spa
onError
- function 复制出错回调.code
git clone git@github.com:freeshineit/react-clipboardjs-copy.git
cd react-clipboardjs-copy
npm install
npm run dev
复制代码
若是有问题请issues。
求🌟和 fork