diff --git a/components/pages/work-flow/use-workflow-data.tsx b/components/pages/work-flow/use-workflow-data.tsx index 6a9faba..8ac4a82 100644 --- a/components/pages/work-flow/use-workflow-data.tsx +++ b/components/pages/work-flow/use-workflow-data.tsx @@ -23,7 +23,7 @@ export function useWorkflowData({ onEditPlanGenerated }: UseWorkflowDataProps = const token = localStorage.getItem('token') || ''; const useid = JSON.parse(localStorage.getItem("currentUser") || '{}').id || NaN; // 查看缓存中 是否已经 加载过 这个项目的 剪辑计划 - const isLoaded = localStorage.getItem(`isLoaded_plan_${episodeId}`); + let isLoadedRef = useRef(localStorage.getItem(`isLoaded_plan_${episodeId}`)); let tempTaskObject = useRef({ title: '', @@ -120,10 +120,11 @@ export function useWorkflowData({ onEditPlanGenerated }: UseWorkflowDataProps = }, [taskObject.currentStage]); const generateEditPlan = useCallback(async (isInit?: boolean) => { - if (isLoaded) { + if (isLoadedRef.current) { return; } localStorage.setItem(`isLoaded_plan_${episodeId}`, 'true'); + isLoadedRef.current = 'true'; if (isInit) { await getGenerateEditPlan({ project_id: episodeId }); // 触发回调,通知父组件计划生成完成 @@ -555,6 +556,9 @@ export function useWorkflowData({ onEditPlanGenerated }: UseWorkflowDataProps = setNeedStreamData(false); resolve(true); }); + // 清缓存 生成计划 视频重新分析 + localStorage.removeItem(`isLoaded_plan_${episodeId}`); + isLoadedRef.current = null; // 重置视频状态为生成中 await new Promise(resolve => { setTaskObject(prev => {