之前在html中使用clipboard.js是很简单的,引用CDN,然后new一个clipboard对象,绑定DOM就可以搞定一键复制文本了。这次要在react中使用,所以原来的方式就不行了,来看看react中如何使用clipboard.js。
npm install clipboard --save
首先还是dom的绑定:
<!-- Target -->
<textarea id="bar">Mussum ipsum cacilds...</textarea>
<!-- Trigger -->
<button class="btn" data-clipboard-action="cut" data-clipboard-target="#bar">
Cut to clipboard
</button>
然后再组件内初始化clipboard.js
var clipboard = new ClipboardJS('.btn');
clipboard.on('success', function(e) {
console.info('Action:', e.action);
console.info('Text:', e.text);
console.info('Trigger:', e.trigger);
e.clearSelection();
});
clipboard.on('error', function(e) {
console.error('Action:', e.action);
console.error('Trigger:', e.trigger);
});
这里官方给出的案例代码,分别列出了复制成功和失败的处理方法,就是这么简单。