Browse Source

Merge pull request '粘贴板判断' (#81) from zq-realTimeTem into master

Reviewed-on: #81
master
zhangqi 3 days ago
parent
commit
09d5f81bcf
  1. 38
      src/utils/clipboard.js

38
src/utils/clipboard.js

@ -47,36 +47,48 @@ export function copyToClipboard(text, options = {}) {
document.body.removeChild(textarea);
}
});
}
}
/**
/**
* @param {string} text 要复制的文本
* @param {Object} options 配置选项
* @returns {Promise<boolean>} 是否复制成功
*/
export async function modernCopyToClipboard(text, options = {}) {
export async function modernCopyToClipboard(text, options = {}) {
const {
successMsg = '复制成功',
errorMsg = '复制失败,请手动复制',
// errorMsg = '复制失败,请手动复制',
vm = null
} = options;
try {
// try {
// 使用现代剪贴板API
if(navigator?.clipboard && navigator?.clipboard?.writeText){
// if(navigator?.clipboard && navigator?.clipboard?.writeText){
// await navigator?.clipboard?.writeText(text);
// if (vm && vm.$Message) {
// vm.$Message.success(successMsg);
// } else {
// console.log(successMsg);
// }
// return true;
// }
// } catch (err) {
// console.error(errorMsg, err);
// 现代API失败后回退到传统方法
// return copyToClipboard(text, options);
// }
debugger
if (navigator.clipboard && window.isSecureContext) {
console.log('走了1111');
await navigator?.clipboard?.writeText(text);
if (vm && vm.$Message) {
vm.$Message.success(successMsg);
} else {
console.log(successMsg);
}
return true;
}
} catch (err) {
console.error(errorMsg, err);
// 现代API失败后回退到传统方法
} else {
return copyToClipboard(text, options);
}
}
}
export default modernCopyToClipboard;
export default modernCopyToClipboard;
Loading…
Cancel
Save