fix: 更新任务列表屏幕标题为“任务模版”,并在任务编辑页面中处理二维码解析失败时清空相关字段
This commit is contained in:
parent
3576a82b8a
commit
e18d0314e6
@ -27,7 +27,7 @@ function HomeStackNavigator() {
|
|||||||
<HomeStack.Screen
|
<HomeStack.Screen
|
||||||
name="TaskList"
|
name="TaskList"
|
||||||
component={TaskListScreen}
|
component={TaskListScreen}
|
||||||
options={{ title: '任务列表' }}
|
options={{ title: '任务模版' }}
|
||||||
/>
|
/>
|
||||||
<HomeStack.Screen
|
<HomeStack.Screen
|
||||||
name="TaskEdit"
|
name="TaskEdit"
|
||||||
|
@ -126,6 +126,7 @@ export default function TaskEditScreen() {
|
|||||||
.trim();
|
.trim();
|
||||||
|
|
||||||
const qrData = JSON.parse(cleanedContent);
|
const qrData = JSON.parse(cleanedContent);
|
||||||
|
|
||||||
console.log('二维码解析成功:', qrData);
|
console.log('二维码解析成功:', qrData);
|
||||||
|
|
||||||
// 创建新的任务对象,保持原有数据不变
|
// 创建新的任务对象,保持原有数据不变
|
||||||
@ -144,7 +145,6 @@ export default function TaskEditScreen() {
|
|||||||
value: '', // 清空为空字符串
|
value: '', // 清空为空字符串
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
// 然后用二维码数据填充匹配的字段
|
// 然后用二维码数据填充匹配的字段
|
||||||
Object.keys(qrData).forEach(qrKey => {
|
Object.keys(qrData).forEach(qrKey => {
|
||||||
const matchingParam = task.detail!.inputParams.find(
|
const matchingParam = task.detail!.inputParams.find(
|
||||||
@ -178,8 +178,31 @@ export default function TaskEditScreen() {
|
|||||||
// 扫描成功后,按钮状态变回"扫描二维码获取信息"
|
// 扫描成功后,按钮状态变回"扫描二维码获取信息"
|
||||||
setIsWaitingForQrCode(false);
|
setIsWaitingForQrCode(false);
|
||||||
} catch (error) {
|
} 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);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user