87 lines
2.3 KiB
TypeScript
87 lines
2.3 KiB
TypeScript
/**
|
||
* 银元之战状态管理 Hook
|
||
* 管理银元之战相关的所有状态
|
||
*/
|
||
import { useState } from "react";
|
||
|
||
/**
|
||
* 银元之战状态管理 Hook
|
||
* @returns 银元之战的所有状态和更新函数
|
||
*/
|
||
export const useYinyuanState = () => {
|
||
// 多选题1相关状态
|
||
const [showQuiz1, setShowQuiz1] = useState(false);
|
||
|
||
// 旁白文字状态(图2)
|
||
const [showNarration2, setShowNarration2] = useState(false);
|
||
const [narration2Text, setNarration2Text] = useState("");
|
||
|
||
// 多选题2相关状态
|
||
const [showQuiz2, setShowQuiz2] = useState(false);
|
||
|
||
// 成功提示框状态
|
||
const [showSuccessAlert, setShowSuccessAlert] = useState(false);
|
||
|
||
// 银元之战解决状态
|
||
const [isYinyuanSolved, setIsYinyuanSolved] = useState(false);
|
||
|
||
// 走势图图标显示状态(控制文件上的走势图图标是否显示)
|
||
const [showTrendChartIcon, setShowTrendChartIcon] = useState(true);
|
||
|
||
// 走势图大图显示状态
|
||
const [showTrendChartDetail, setShowTrendChartDetail] = useState(false);
|
||
|
||
// 三个引导提示框状态
|
||
const [showGuide1, setShowGuide1] = useState(false); // 前往解决按钮出现后的提示
|
||
const [showGuide2, setShowGuide2] = useState(false); // 走势图出现后的提示
|
||
const [showGuide3, setShowGuide3] = useState(false); // 走势图大图打开后的提示
|
||
|
||
// 记录是否已经显示过这些提示(避免重复显示)
|
||
const [hasShownGuide1, setHasShownGuide1] = useState(false);
|
||
const [hasShownGuide2, setHasShownGuide2] = useState(false);
|
||
const [hasShownGuide3, setHasShownGuide3] = useState(false);
|
||
|
||
return {
|
||
// 题目相关状态
|
||
showQuiz1,
|
||
setShowQuiz1,
|
||
showQuiz2,
|
||
setShowQuiz2,
|
||
|
||
// 旁白相关状态
|
||
showNarration2,
|
||
setShowNarration2,
|
||
narration2Text,
|
||
setNarration2Text,
|
||
|
||
// 成功提示框状态
|
||
showSuccessAlert,
|
||
setShowSuccessAlert,
|
||
|
||
// 解决状态
|
||
isYinyuanSolved,
|
||
setIsYinyuanSolved,
|
||
|
||
// 走势图相关状态
|
||
showTrendChartIcon,
|
||
setShowTrendChartIcon,
|
||
showTrendChartDetail,
|
||
setShowTrendChartDetail,
|
||
|
||
// 引导提示状态
|
||
showGuide1,
|
||
setShowGuide1,
|
||
showGuide2,
|
||
setShowGuide2,
|
||
showGuide3,
|
||
setShowGuide3,
|
||
hasShownGuide1,
|
||
setHasShownGuide1,
|
||
hasShownGuide2,
|
||
setHasShownGuide2,
|
||
hasShownGuide3,
|
||
setHasShownGuide3,
|
||
};
|
||
};
|
||
|