ruoyi-plus-soybean/src/utils/copy.ts
2025-04-27 17:06:19 +08:00

27 lines
709 B
TypeScript

import { useClipboard } from '@vueuse/core';
const { copy, isSupported } = useClipboard();
export async function handleCopy(source?: string) {
if (!isSupported) {
window.$message?.error('您的浏览器不支持 Clipboard API');
return;
}
if (!source) {
return;
}
if (navigator.clipboard && window.isSecureContext) {
await copy(source);
} else {
const range = document.createRange();
range.selectNode(document.getElementById('tokenDetailInput')!);
const selection = window.getSelection();
if (selection?.rangeCount) selection.removeAllRanges();
selection?.addRange(range);
document.execCommand('copy');
}
window.$message?.success('复制成功');
}