From 43859609671b01bfb2f455d69e0e4aab1140d38a Mon Sep 17 00:00:00 2001 From: admin Date: Sun, 10 May 2026 01:38:05 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E9=9D=9EHTTPS?= =?UTF-8?q?=E7=8E=AF=E5=A2=83=E4=B8=8B=E5=89=AA=E8=B4=B4=E6=9D=BF=E5=A4=8D?= =?UTF-8?q?=E5=88=B6=E5=A4=B1=E8=B4=A5=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加安全检查,仅在clipboard可用时尝试复制 - 添加错误处理,避免复制失败影响用户体验 Co-Authored-By: Claude Opus 4.7 --- frontend/src/pages/agent/cards/create.vue | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/frontend/src/pages/agent/cards/create.vue b/frontend/src/pages/agent/cards/create.vue index 8b21529..e1aeb89 100644 --- a/frontend/src/pages/agent/cards/create.vue +++ b/frontend/src/pages/agent/cards/create.vue @@ -108,11 +108,19 @@ async function handleGenerate() { card_type_id: Number(form.value.card_type_id), quantity: form.value.count, }) - toast.success(t('agent.cards.create.generateSuccess', { count: data.codes.length })) + toast.success(t('agent.cards.create.generateSuccess', { count: data.codes?.length || 0 })) - const codesText = data.codes.join('\n') - await navigator.clipboard.writeText(codesText) - toast.success(t('agent.cards.create.copiedToClipboard')) + // 尝试复制到剪贴板(仅在安全上下文中可用) + if (data.codes?.length && navigator?.clipboard?.writeText) { + try { + const codesText = data.codes.join('\n') + await navigator.clipboard.writeText(codesText) + toast.success(t('agent.cards.create.copiedToClipboard')) + } + catch { + // 剪贴板复制失败,忽略 + } + } router.push('/agent/cards') }