多维表格
 
 
 
 
 
 

30 lines
732 B

import { useClipboard } from '#imports'
export const useCopy = () => {
/** fallback for copy if clipboard api is not supported */
const copyFallback = (text: string) => {
const textAreaEl = document.createElement('textarea')
textAreaEl.innerHTML = text
document.body.appendChild(textAreaEl)
textAreaEl.select()
const result = document.execCommand('copy')
document.body.removeChild(textAreaEl)
return result
}
const { copy: _copy, isSupported } = useClipboard()
const copy = async (text: string) => {
try {
if (isSupported.value) {
await _copy(text)
} else {
copyFallback(text)
}
} catch (e) {
copyFallback(text)
}
}
return { copy }
}