【功能修复】文件列表: 复制链接功能在部分浏览器环境下报错的问题
在 navigator.clipboard 为 undefined,导致无法读取 writeText 方法,浏览器抛出异常: Uncaught TypeError: Cannot read properties of undefined (reading 'writeText') Signed-off-by: 光帆 <1048766504@qq.com>pull/843/head
parent
3d07ebcbe8
commit
8f5f2e96b3
|
|
@ -187,9 +187,29 @@ const openForm = () => {
|
||||||
|
|
||||||
/** 复制到剪贴板方法 */
|
/** 复制到剪贴板方法 */
|
||||||
const copyToClipboard = (text: string) => {
|
const copyToClipboard = (text: string) => {
|
||||||
navigator.clipboard.writeText(text).then(() => {
|
if (navigator.clipboard && window.isSecureContext) {
|
||||||
message.success('复制成功')
|
navigator.clipboard
|
||||||
})
|
.writeText(text)
|
||||||
|
.then(() => {
|
||||||
|
message.success('复制成功')
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
message.error('复制失败')
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
// 兼容不支持 clipboard 的情况
|
||||||
|
try {
|
||||||
|
const textarea = document.createElement('textarea')
|
||||||
|
textarea.value = text
|
||||||
|
document.body.appendChild(textarea)
|
||||||
|
textarea.select()
|
||||||
|
document.execCommand('copy')
|
||||||
|
document.body.removeChild(textarea)
|
||||||
|
message.success('复制成功')
|
||||||
|
} catch (error) {
|
||||||
|
message.error('复制失败')
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 删除按钮操作 */
|
/** 删除按钮操作 */
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue