2 changed files with 25 additions and 8 deletions
@ -0,0 +1,23 @@ |
|||
import { NsMessage } from '/nerv-lib/component'; |
|||
const flag = navigator.clipboard && window.isSecureContext; |
|||
|
|||
export const copyText = (text: any) => { |
|||
if (flag) { |
|||
// navigator clipboard 向剪贴板写文本
|
|||
navigator.clipboard.writeText(text).then(() => { |
|||
NsMessage.success('复制成功'); |
|||
}); |
|||
} else { |
|||
// 创建text area
|
|||
const textArea = document.createElement('textarea'); |
|||
textArea.value = text; |
|||
// 使text area不在viewport,同时设置不可见
|
|||
document.body.appendChild(textArea); |
|||
textArea.focus(); |
|||
textArea.select(); |
|||
NsMessage.success('复制成功'); |
|||
// 执行复制命令并移除文本框
|
|||
document.execCommand('copy'); |
|||
textArea.remove(); |
|||
} |
|||
}; |
Loading…
Reference in new issue