yy-clipboard
v1.0.0
Published
剪贴板工具,支持自定义成功/失败回调
Readme
yy-clipboard
剪贴板工具,支持自定义成功/失败回调。
安装
npm install yy-clipboard使用
基础用法(使用 Clipboard.js)
import handleClipboard from 'yy-clipboard';
// 在事件处理函数中使用
function handleClick(event) {
handleClipboard('要复制的文本', event, {
onSuccess: () => {
console.log('复制成功');
},
onError: () => {
console.log('复制失败');
}
});
}使用现代 Clipboard API(推荐)
import { copyText } from 'yy-clipboard';
async function copy() {
const success = await copyText('要复制的文本');
if (success) {
console.log('复制成功');
} else {
console.log('复制失败');
}
}在 Vue 组件中使用
<template>
<button @click="handleCopy">复制</button>
</template>
<script setup>
import { copyText } from 'yy-clipboard';
import { message } from 'ant-design-vue'; // 或其他 UI 库
async function handleCopy() {
const success = await copyText('要复制的文本');
if (success) {
message.success('复制成功');
} else {
message.error('复制失败');
}
}
</script>API
handleClipboard(text, target, options)
使用 Clipboard.js 复制文本。
参数:
text(string) - 要复制的文本target(HTMLElement|Event) - 目标元素或事件对象options(object) - 配置选项onSuccess(Function) - 成功回调onError(Function) - 失败回调
copyText(text)
使用现代 Clipboard API 复制文本(推荐)。
参数:
text(string) - 要复制的文本
返回值:
Promise<boolean>- 是否成功
特性
- ✅ 支持 Clipboard.js(兼容旧浏览器)
- ✅ 支持现代 Clipboard API(推荐)
- ✅ 自动降级处理
- ✅ 可自定义回调
- ✅ TypeScript 支持
