fix: 进度持久化与断点恢复 + VoiceInput 权限/异常加固 + Jev 故障优雅降级

This commit is contained in:
Jayway Liu
2026-10-03 18:30:36 +08:00
parent b0c7ef2daf
commit e854b4e610
6 changed files with 258 additions and 31 deletions
+13 -2
View File
@@ -42,6 +42,7 @@ function buildState(events: StoryEvent[]): string {
export function ReportPage({ store, jev, onReplay }: Props) {
const [scores, setScores] = useState<DimensionScore[] | null>(null);
const [error, setError] = useState<string | null>(null);
const [retry, setRetry] = useState(0);
useEffect(() => {
let cancelled = false;
@@ -79,14 +80,24 @@ export function ReportPage({ store, jev, onReplay }: Props) {
return () => {
cancelled = true;
};
}, [store, jev]);
}, [store, jev, retry]);
if (error) {
return (
<div className="report">
<h1>画像报告生成失败</h1>
<p>{error}</p>
<button className="primary" onClick={onReplay}>
<button
className="primary"
onClick={() => {
setError(null);
setScores(null);
setRetry((r) => r + 1);
}}
>
画像生成失败,点此重试
</button>
<button className="secondary" onClick={onReplay}>
回到剧情
</button>
</div>