Files
testing-tool/utils/clipboard.ts
T
雨霖铃 2a0a5658b5 refactor(clipboard): 重构剪贴板工具函数并优化相关组件
将 copyToClipboard 拆分为 copyTextToClipboard 和 copyImageToClipboard
移除 useClipboard hook 并将消息处理移至调用方
优化组件中的剪贴板操作错误处理逻辑
2026-05-03 20:43:40 +08:00

40 lines
876 B
TypeScript

/**
* 复制文本到剪贴板
* @param text 要复制的文本
* @returns Promise<boolean> 是否复制成功
*/
export const copyTextToClipboard = async (text: string): Promise<boolean> => {
return new Promise((resolve, reject) => {
navigator.clipboard
.writeText(text)
.then(() => {
resolve(true);
})
.catch(() => {
reject(false);
});
});
};
/**
* 复制图片到剪贴板
* @param blob 要复制的图片
* @returns Promise<boolean> 是否复制成功
*/
export const copyImageToClipboard = async (blob: Blob): Promise<boolean> => {
return new Promise((resolve, reject) => {
navigator.clipboard
.write([
new ClipboardItem({
'image/png': blob,
}),
])
.then(() => {
resolve(true);
})
.catch(() => {
reject(false);
});
});
};