From 1a480fdd6dc25a35014065e9e2a47d56c0c10828 Mon Sep 17 00:00:00 2001 From: xudan Date: Wed, 23 Jul 2025 16:29:20 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E8=A1=A8=E5=8D=95=E4=BB=A5=E4=BD=BF=E7=94=A8=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E6=A0=87=E7=AD=BE=E4=BB=A3=E6=9B=BF=E5=90=8D=E7=A7=B0=EF=BC=8C?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BB=BB=E5=8A=A1=E7=BC=96=E8=BE=91=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E4=BB=A5=E5=A4=84=E7=90=86=E4=BB=BB=E5=8A=A1=E8=AF=A6?= =?UTF-8?q?=E6=83=85=E5=AD=97=E6=AE=B5=E7=9A=84=E8=A7=A3=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/TaskForm.tsx | 2 +- src/screens/TaskEditScreen.tsx | 18 +++++++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/src/components/TaskForm.tsx b/src/components/TaskForm.tsx index 5d7d5f6..f99fbc0 100644 --- a/src/components/TaskForm.tsx +++ b/src/components/TaskForm.tsx @@ -99,7 +99,7 @@ const TaskForm: React.FC = ({ task, onTaskChange }) => { 任务名称 onTaskChange({ ...task, name: text })} inputContainerStyle={styles.inputContainer} inputStyle={styles.inputText} diff --git a/src/screens/TaskEditScreen.tsx b/src/screens/TaskEditScreen.tsx index 8760296..d2662e2 100644 --- a/src/screens/TaskEditScreen.tsx +++ b/src/screens/TaskEditScreen.tsx @@ -39,14 +39,26 @@ export default function TaskEditScreen() { useEffect(() => { const loadTask = async () => { let taskData = getTaskById(taskId); - debugger; + console.log('taskData', taskData); + if (taskData && !taskData.detail) { await fetchTaskDetail(taskId); taskData = getTaskById(taskId); } if (taskData) { - setTask(taskData); - setOriginalTask(taskData); + // 在这里处理 detail 字段 + let processedTask = { ...taskData }; + if (processedTask.detail && typeof processedTask.detail === 'string') { + try { + processedTask.detail = JSON.parse(processedTask.detail); + } catch (e) { + console.error('解析任务详情失败:', e); + // 解析失败,可以根据业务需求决定如何处理,比如清空detail + processedTask.detail = undefined; + } + } + setTask(processedTask); + setOriginalTask(processedTask); } }; loadTask();