feat: 移除不再使用的配置文件和更新组件,提升代码整洁性

- 删除 .claude/settings.local.json 配置文件,清理不必要的代码。
- 更新多个组件以引入音频资源,增强用户互动体验。
- 调整引导对话文本,确保信息准确性和一致性。
- 更新图像资源,提升视觉内容的准确性和一致性。
This commit is contained in:
zhongyidian committed 2026-01-20 18:06:55 +08:00
1 parent cf64e7ec50
commit 8ba36a4a1a
132 files changed
+546 -454

No files matched your search

+45 -23
View File
@@ -8,7 +8,7 @@ import {
StudyGuideModal,
} from "@/components";
import { useNavigate, useParams } from "react-router-dom";
import { getBackgroundImage, getStaticImage } from "@/lib/utils";
import { getBackgroundImage, getPublicPath, getStaticImage } from "@/lib/utils";
import { useState, useEffect } from "react";
import { useCursorController } from "@/hooks/useCursorController";
@@ -36,11 +36,9 @@ const LuxunPlace1 = () => {
const [visible, setVisible] = useState(false);
const [visibleIndex, setVisibleIndex] = useState(0);
// 浏览完展品后的对话显示状态
// 打开展品2后的对话显示状态
const [showAfterExhibitDialog, setShowAfterExhibitDialog] = useState(false);
const [afterExhibitDialogShown, setAfterExhibitDialogShown] = useState(false);
// 对话结束后是否显示前进按钮
const [showForwardButton, setShowForwardButton] = useState(false);
const [afterExhibitDialogStep, setAfterExhibitDialogStep] = useState(0);
// 当前激活的展品 ID(只存 ID,不直接存路径,便于作为唯一标识)
const [activeExhibitId, setActiveExhibitId] = useState<1 | 2 | null>(null);
// 已浏览展品的 ID 集合
@@ -60,6 +58,11 @@ const LuxunPlace1 = () => {
setVisibleIndex(0);
setVisible(true);
}
if (index === 2) {
setAfterExhibitDialogStep(0);
setShowAfterExhibitDialog(true);
}
setActiveExhibitId(index);
};
@@ -68,12 +71,12 @@ const LuxunPlace1 = () => {
const completed = progressCount >= total;
// 当两个展品都浏览完成后,自动显示对话
useEffect(() => {
if (completed && !afterExhibitDialogShown) {
setShowAfterExhibitDialog(true);
setAfterExhibitDialogShown(true);
}
}, [completed, afterExhibitDialogShown]);
// useEffect(() => {
// if (completed && !afterExhibitDialogShown) {
// setShowAfterExhibitDialog(true);
// setAfterExhibitDialogShown(true);
// }
// }, [completed, afterExhibitDialogShown]);
const subtitle = completed
? "探索鲁迅故居一楼客厅(已完成)"
: `探索鲁迅故居一楼客厅(${progressCount}/${total})`;
@@ -123,7 +126,7 @@ const LuxunPlace1 = () => {
/>
{/* 继续前进 - 仅在完成所有展品且对话结束后显示 */}
{showForwardButton && (
{completed && (
<Image
className="absolute bottom-0 right-0"
src={getStaticImage("components/place/继续前进")}
@@ -165,6 +168,7 @@ const LuxunPlace1 = () => {
setShowAfterDialogGuide(true);
}
}}
audioSrc={getPublicPath("audio/luxun/mp3_luxun_01.mp3")}
>
{`同学你好,欢迎来到“走进故居·对话”学习模块!
此刻你正立在鲁迅故居的一楼客厅里,接下来请随旧时光的纹路,一同翻开先生思想长卷里的5段深刻轨迹:风雨前夕的思想淬炼、杂文集里的匕首与投枪、历史新编中的现实呐喊、为亡友编纂的精神丰碑、6平方米的红色庇护所。准备好共赴这场笔尖与灵魂的滚烫相遇了吗?`}
@@ -181,10 +185,16 @@ const LuxunPlace1 = () => {
showMask={false}
zIndex={10000}
>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_03.mp3")}
>
小沪!我知道鲁迅是1933年搬到大陆新村9号的,那在这之前他为什么会选择来到上海,又有哪些思想转变呢?
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_04.mp3")}
>
你问得很关键!从1892-1898年少年时期在绍兴三味书屋求学积淀,到1919-1923年于北京八道湾参加新文化运动、酝酿《阿Q正传》,再到1926年9-12月赴厦门大学任教期间聚焦底层创作杂文。
</GuideStepsItem>
<GuideStepsItem speaker="guide">
@@ -200,6 +210,7 @@ const LuxunPlace1 = () => {
visible={showAfterDialogGuide}
onContinue={() => setShowAfterDialogGuide(false)}
ailgn="left"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_02.mp3")}
>
1.场景中出现动态光点的展品表示未浏览,可通过点击光点来了解展品背后的故事,通过滚轮可以放大展品,浏览展品后蓝色动态光点会变为已浏览状态。
{"\n"}
@@ -211,28 +222,39 @@ const LuxunPlace1 = () => {
{/* 浏览完展品后的对话 */}
<GuideSteps
visible={showAfterExhibitDialog}
currentStep={afterExhibitDialogStep}
onStepChange={setAfterExhibitDialogStep}
onVisibleChange={(nextVisible) => {
setShowAfterExhibitDialog(nextVisible);
if (!nextVisible) {
setShowForwardButton(true);
}
}}
showMask={true}
highlightSelectors={[]}
showMask={false}
zIndex={10000}
>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_05.mp3")}
>
这张照片也是鲁迅在上海期间的住所吗?
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_06.mp3")}
>
不错!1927年10月,鲁迅带着许广平来到上海,先住进了虹口区横浜路景云里。在景云里的两年半,他结识了冯雪峰等共产党员,参与发起中国左翼作家联盟,从"独战的英雄"转变为革命文艺战线的旗手。
</GuideStepsItem>
<GuideStepsItem speaker="guide">
这段时间他写下《三闲集》《二心集》,表达他在当时历史条件下针对社会现象、文化问题和论战的看法与社会批判,此间还翻译了大量马列文艺理论著作,为此后的战斗打下了坚实思想基础。
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_07.mp3")}
>
鲁迅在发起成立左联后,为躲避国民党当局监视,1930年5月,与许广平、周海婴迁居到拉摩斯公寓。1933年4月,受战火纷扰影响,为安全及健康计,同时也为了更方便开展革命文化工作,鲁迅以"内山书店职员"的名义,搬到了大陆新村9号。
</GuideStepsItem>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_08.mp3")}
>
这个过程的确十分曲折。
</GuideStepsItem>
</GuideSteps>
+25 -7
View File
@@ -7,7 +7,7 @@ import {
GuideStepsItem,
} from "@/components";
import { useNavigate, useParams } from "react-router-dom";
import { getBackgroundImage, getStaticImage } from "@/lib/utils";
import { getBackgroundImage, getPublicPath, getStaticImage } from "@/lib/utils";
import { useState } from "react";
import { useCursorController } from "@/hooks/useCursorController";
@@ -191,10 +191,16 @@ const LuxunPlace2 = () => {
highlightSelectors={[]}
zIndex={10000}
>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_09.mp3")}
>
小沪,这里的《且介亭杂文》就是鲁迅先生在大陆新村9号创作的吧,有人将先生的杂文评价为"匕首与投枪",《且介亭杂文》中有具体体现吗?
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_10.mp3")}
>
当然有!20世纪30年代,国民党"文化围剿"愈烈,进步思想遭严控,鲁迅在大陆新村9号创作出《且介亭杂文》等集子。这些杂文聚焦文化乱象与社会沉疴,篇幅精炼却直击要害,像匕首般刺穿虚伪表象,似投枪般直戳问题核心。
</GuideStepsItem>
<GuideStepsItem speaker="guide">
@@ -211,10 +217,16 @@ const LuxunPlace2 = () => {
highlightSelectors={[]}
zIndex={10000}
>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_13.mp3")}
>
那《南腔北调集》这个名字又有什么深意呢?
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_14.mp3")}
>
这是鲁迅的自嘲,他曾说"我不会说绵软的苏白,不会打响亮的京腔,不入调,不入流",所以戏称自己的文章是"南腔北调"。这本书里的《〈守常全集》题记》,赞美了李大钊同志,说"他的遗文却将永驻,因为这是先驱者的遗产,革命史上的丰碑。"
</GuideStepsItem>
</GuideSteps>
@@ -228,10 +240,16 @@ const LuxunPlace2 = () => {
highlightSelectors={[]}
zIndex={10000}
>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_11.mp3")}
>
我们初中学的《中国人失掉自信力了吗》就是收录于《且介亭杂文》中的!
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_12.mp3")}
>
那你应该更有体会!这篇《中国人失掉自信力了吗》是将“匕首与投枪”的特质发挥到极致。当时国民党当局接连丧权辱国,一些文人却散布“中国人失掉自信力”的悲观论调,迎合反动派的卖国行径。
</GuideStepsItem>
<GuideStepsItem speaker="guide">
+51 -18
View File
@@ -8,7 +8,7 @@ import {
SingleChoiceQuizPanel,
} from "@/components";
import { useNavigate, useParams } from "react-router-dom";
import { getBackgroundImage, getStaticImage } from "@/lib/utils";
import { getBackgroundImage, getPublicPath, getStaticImage } from "@/lib/utils";
import { useState } from "react";
import SuccessAlert from "@/components/layout/alert/success-alert";
import { useCursorController } from "@/hooks/useCursorController";
@@ -210,13 +210,16 @@ const LuxunPlace3 = () => {
<ExhibitOverlay
visible={activeExhibitId !== null}
src={activeExhibitId ? exhibitSrcMap[activeExhibitId] : ""}
// description={
// activeExhibitId === 2
// ? '本书里面还收录了《理水》,文章写的是大禹治水"三过家门而不入"的上古传说,实则藏着对现实的尖锐针砭。当时反动派统治腐朽,面对内忧外患只会粉饰太平,还有一群空谈理论、脱离实际的"学者"混淆视听。大禹带领民众跋山涉水、实地勘察,摒弃"堵"的旧法改用"疏"的良方,历经千辛万苦终平水患。这哪里是写古代治水?分明是在赞颂脚踏实地、敢破敢立的实干精神,讽刺那些庸碌无为的当权者与空谈家,用远古的正义之光映照现实的黑暗。'
// : activeExhibitId === 5
// ? "为了妥善出版亡友遗著,鲁迅亲自选稿、校对、设计封面。为了躲避反动派的审查,他还特意用“诸夏怀霜社”的名义出版,“怀霜”就是为了纪念瞿秋白。1936年《海上述林》上卷出版时,鲁迅的身体已经极度虚弱,但他仍一遍遍翻看样书,说“这是我对秋白最好的纪念”。"
// : undefined
// }
description={
activeExhibitId === 5
? "为了妥善出版亡友遗著,鲁迅亲自选稿、校对、设计封面。为了躲避反动派的审查,他还特意用“诸夏怀霜社”的名义出版,“怀霜”就是为了纪念瞿秋白。1936年《海上述林》上卷出版时,鲁迅的身体已经极度虚弱,但他仍一遍遍翻看样书,说“这是我对秋白最好的纪念”。"
: undefined
}
audioSrc={
activeExhibitId === 5
? getPublicPath("audio/luxun/mp3_luxun_23.mp3")
: undefined
}
onClose={() => {
if (activeExhibitId === 2) {
// 光标2:关闭展品框后显示题目
@@ -266,10 +269,16 @@ const LuxunPlace3 = () => {
highlightSelectors={[]}
zIndex={10000}
>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_15.mp3")}
>
小沪,书架上还有《故事新编》,这不是历史小说吗?鲁迅为什么要在这个时期写古代故事呢?
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_16.mp3")}
>
《故事新编》是鲁迅酝酿十几年的作品,最终在大陆新村9号完成定稿。表面上写的是神话传说和历史典故,实则句句都在影射现实。当时反动派妄图用复古思想麻痹民众,鲁迅就用"故事新编"的方式,借古讽今,唤醒民众。
</GuideStepsItem>
</GuideSteps>
@@ -284,10 +293,16 @@ const LuxunPlace3 = () => {
highlightSelectors={[]}
zIndex={10000}
>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_17.mp3")}
>
这本书里面还收录了《理水》,是大禹治水的故事吗?
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_18.mp3")}
>
不错,文章写的是大禹治水“三过家门而不入”的上古传说,实则藏着对现实的尖锐针砭。当时反动派统治腐朽,面对内忧外患只会粉饰太平,还有一群空谈理论、脱离实际的“学者”混淆视听。
</GuideStepsItem>
<GuideStepsItem speaker="guide">
@@ -375,10 +390,16 @@ const LuxunPlace3 = () => {
highlightSelectors={[]}
zIndex={10000}
>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_19.mp3")}
>
我还看到书架上有很多翻译作品,这也是他在这儿完成的吗?
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_20.mp3")}
>
没错!鲁迅在这儿翻译了《死魂灵》《表》等大量外国作品。他说"没有拿来的,人不能自成为新人",就是想通过翻译,为中国文艺引进新思想、新方法,让更多人看到世界的真相,找到救国的道路。
</GuideStepsItem>
</GuideSteps>
@@ -403,10 +424,16 @@ const LuxunPlace3 = () => {
highlightSelectors={[]}
zIndex={10000}
>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_21.mp3")}
>
小沪,这两本书看起来格外厚重,它和鲁迅在这儿的经历有什么关联呢?
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_22.mp3")}
>
这不是鲁迅的著作,却是他在大陆新村9号倾注了全部心血的作品——为亡友瞿秋白编辑的译文集《海上述林》。1935年6月,瞿秋白被国民党反动派杀害,鲁迅悲痛万分,当即决定要为挚友出版译文集,让他的思想和精神流传下去。
</GuideStepsItem>
</GuideSteps>
@@ -471,10 +498,16 @@ const LuxunPlace3 = () => {
highlightSelectors={[]}
zIndex={10000}
>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_24.mp3")}
>
原来这本书不仅是译文集,更是两人革命友谊和共同信仰的见证!
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_25.mp3")}
>
太对了!鲁迅和瞿秋白的故事不仅在于《海上述林》的字里行间,这座小楼的三楼也藏着他们为了革命事业并肩战斗的初心。
</GuideStepsItem>
</GuideSteps>
+22 -7
View File
@@ -188,10 +188,16 @@ const LuxunPlace5 = () => {
highlightSelectors={[]}
zIndex={10000}
>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_26.mp3")}
>
你说的是这间小小的客房吗,这里为什么会被称为"红色庇护所"呢?
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_27.mp3")}
>
你可别小看这间仅6平方米的客房,在白色恐怖笼罩的1933年至1936年,这里是很多共产党人的"安全港湾"。1933年,瞿秋白夫妇第三次到鲁迅家避难,就秘密住进了这里。
</GuideStepsItem>
<GuideStepsItem speaker="guide">
@@ -263,10 +269,16 @@ const LuxunPlace5 = () => {
highlightSelectors={[]}
zIndex={10000}
>
<GuideStepsItem speaker="student">
<GuideStepsItem
speaker="student"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_28.mp3")}
>
除了瞿秋白,还有其他共产党人来过这里吗
</GuideStepsItem>
<GuideStepsItem speaker="guide">
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_29.mp3")}
>
当然!1936年4月,中共中央特派员冯雪峰到上海开展工作,也先住进了这间客房。冯雪峰把红军长征胜利、遵义会议召开的消息告诉鲁迅,还带来了毛泽东同志提出的抗日民族统一战线主张。
</GuideStepsItem>
<GuideStepsItem speaker="guide">
@@ -302,11 +314,14 @@ const LuxunPlace5 = () => {
showMask={false}
zIndex={20010}
>
<GuideStepsItem speaker="guide">
我们已经了解了鲁迅居住在上海大陆新村9号时的重要事件。接下来,请你接过先生手中的“笔”,走出上海,跨越时空,追寻他从绍兴三味书屋到上海的创作足迹——解锁每个地标背后的故事,填充文字里的时代线索...
<GuideStepsItem
speaker="guide"
audioSrc={getPublicPath("audio/luxun/mp3_luxun_30.mp3")}
>
我们已经了解了鲁迅居住在上海大陆新村9号时的重要事件。
</GuideStepsItem>
<GuideStepsItem speaker="guide">
在互动中,读懂先生笔墨间的温度与力量。
接下来,请你接过先生手中的“笔”,走出上海,跨越时空,追寻他从绍兴三味书屋到上海的创作足迹——解锁每个地标背后的故事,填充文字里的时代线索,在互动中,读懂先生笔墨间的温度与力量。
</GuideStepsItem>
</GuideSteps>
</div>