fix: maintain processing status during auto-retry to show loading animation
This commit is contained in:
parent
59bc3636e1
commit
cfa61a426d
@ -338,9 +338,9 @@ export function SceneFusionDialog({ open, onOpenChange }: SceneFusionDialogProps
|
||||
// 检查是否需要自动重试
|
||||
if (retryCount < MAX_AUTO_RETRY) {
|
||||
console.log(`[SceneFusion] Auto-retrying scene ${id} (${retryCount + 1}/${MAX_AUTO_RETRY})...`);
|
||||
// 更新重试计数(用户无感)
|
||||
// 更新重试计数,保持 processing 状态(用户无感)
|
||||
setScenes(prev => prev.map(s =>
|
||||
s.id === id ? { ...s, retryCount: retryCount + 1 } : s
|
||||
s.id === id ? { ...s, status: 'processing', retryCount: retryCount + 1, error: undefined } : s
|
||||
));
|
||||
// 延迟2秒后自动重试
|
||||
await new Promise(resolve => setTimeout(resolve, 2000));
|
||||
|
||||
@ -477,9 +477,9 @@ export function SceneFusionView({ onBack }: SceneFusionViewProps) {
|
||||
// 检查是否需要自动重试
|
||||
if (retryCount < MAX_AUTO_RETRY) {
|
||||
console.log(`[SceneFusion] Auto-retrying scene ${id} (${retryCount + 1}/${MAX_AUTO_RETRY})...`);
|
||||
// 更新重试计数(用户无感)
|
||||
// 更新重试计数,保持 processing 状态(用户无感)
|
||||
setScenes(prev => prev.map(s =>
|
||||
s.id === id ? { ...s, retryCount: retryCount + 1 } : s
|
||||
s.id === id ? { ...s, status: 'processing', retryCount: retryCount + 1, error: undefined } : s
|
||||
));
|
||||
// 延迟2秒后自动重试
|
||||
await new Promise(resolve => setTimeout(resolve, 2000));
|
||||
@ -490,7 +490,7 @@ export function SceneFusionView({ onBack }: SceneFusionViewProps) {
|
||||
setScenes(prev => prev.map(s =>
|
||||
s.id === id ? { ...s, status: 'failed', error: `重试${MAX_AUTO_RETRY}次后失败: ${error instanceof Error ? error.message : '处理失败'}` } : s
|
||||
));
|
||||
toast.error(error instanceof Error ? error.message : '重新生成失败');
|
||||
toast.error(`重试${MAX_AUTO_RETRY}次后仍然失败`);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user