diff --git a/src/navigation/AppNavigator.tsx b/src/navigation/AppNavigator.tsx
index 2795401..4dab0af 100644
--- a/src/navigation/AppNavigator.tsx
+++ b/src/navigation/AppNavigator.tsx
@@ -27,7 +27,7 @@ function HomeStackNavigator() {
{
const matchingParam = task.detail!.inputParams.find(
@@ -178,8 +178,31 @@ export default function TaskEditScreen() {
// 扫描成功后,按钮状态变回"扫描二维码获取信息"
setIsWaitingForQrCode(false);
} catch (error) {
- // 解析失败不报错,按照需求静默处理
- console.log('二维码信息解析失败,但不影响使用:', error);
+ // 解析失败时清空二维码输入框和表单字段
+ setQrCodeInfo('');
+
+ // 清空所有表单字段
+ if (task && task.detail && task.detail.inputParams) {
+ const clearedTask = { ...task };
+ if (!clearedTask.parameters) {
+ clearedTask.parameters = {};
+ }
+
+ task.detail.inputParams.forEach(param => {
+ const currentParam = clearedTask.parameters[param.name] || {};
+ clearedTask.parameters[param.name] = {
+ ...currentParam,
+ value: '', // 清空为空字符串
+ };
+ });
+
+ setTask(clearedTask);
+ if (!isModified) {
+ setIsModified(true);
+ }
+ }
+
+ console.log('二维码信息解析失败,已清空相关字段:', error);
}
};