diff --git a/src/frontend/src/components/EdictBoard.tsx b/src/frontend/src/components/EdictBoard.tsx index 9e67c46..b98a4af 100644 --- a/src/frontend/src/components/EdictBoard.tsx +++ b/src/frontend/src/components/EdictBoard.tsx @@ -301,9 +301,9 @@ export default function EdictBoard() { }, [selectedProjectId]); // ── 卡片动作处理 ── - const handleCardAction = async (taskId: string, action: string) => { - const pid = selectedProjectId; - if (!pid) return; + const handleCardAction = async (taskId: string, action: string, taskPid?: string) => { + const pid = taskPid || (selectedProjectId && !selectedProjectId.startsWith('__') ? selectedProjectId : null); + if (!pid) { toast('请先选择具体项目', 'err'); return; } try { if (action === 'archive') { const res = await fetch(`/api/projects/${pid}/tasks/${taskId}`, {