diff --git a/src/views/DBQBmodel.vue b/src/views/DBQBmodel.vue index 094946d..b61f614 100644 --- a/src/views/DBQBmodel.vue +++ b/src/views/DBQBmodel.vue @@ -71,6 +71,8 @@ const goToHomePage = async () => { // 设置 sessionStorage 控制 homepage.vue 激活 AiEmotion tab sessionStorage.setItem("activeTabAI", "AIchat"); sessionStorage.setItem("activeIndexAI", "0"); + // 设置标记表示从外部页面跳转过来 + sessionStorage.setItem("fromExternalPage", "true"); router.push("/homePage"); } else { console.log("无权限"); diff --git a/src/views/Emotionsmodel.vue b/src/views/Emotionsmodel.vue index 455aa3f..6481735 100644 --- a/src/views/Emotionsmodel.vue +++ b/src/views/Emotionsmodel.vue @@ -108,6 +108,8 @@ const goToAiEmotion = async () => { // 设置 sessionStorage 控制 homepage.vue 激活 AiEmotion tab sessionStorage.setItem("activeTabAI", "AiEmotion"); sessionStorage.setItem("activeIndexAI", "1"); + // 设置标记表示从外部页面跳转过来 + sessionStorage.setItem("fromExternalPage", "true"); router.push("/homePage"); } else { console.log("无权限"); diff --git a/src/views/homePage.vue b/src/views/homePage.vue index 39255a4..aa7cb01 100644 --- a/src/views/homePage.vue +++ b/src/views/homePage.vue @@ -330,6 +330,32 @@ const handleHistorySelect = (stockData) => { // 新增一个变量来控制是否显示公告页面 const isAnnouncementVisible = ref(false); +// Token规则提示框相关 +const tokenRuleDialogVisible = ref(false); +const hasShownTokenRule = ref({ + AIchat: sessionStorage.getItem('hasShownTokenRule_AIchat') === 'true', + AiEmotion: sessionStorage.getItem('hasShownTokenRule_AiEmotion') === 'true' +}); + +// 关闭Token规则提示框 +const closeTokenRuleDialog = () => { + tokenRuleDialogVisible.value = false; +}; + +// 检查是否需要显示Token规则提示框(从其他页面跳转过来时) +const checkTokenRuleOnPageLoad = () => { + const activeTab = sessionStorage.getItem('activeTabAI'); + const fromExternalPage = sessionStorage.getItem('fromExternalPage'); + + if (fromExternalPage === 'true' && activeTab && !hasShownTokenRule.value[activeTab]) { + tokenRuleDialogVisible.value = true; + hasShownTokenRule.value[activeTab] = true; + sessionStorage.setItem(`hasShownTokenRule_${activeTab}`, 'true'); + // 清除标记,避免重复显示 + sessionStorage.removeItem('fromExternalPage'); + } +}; + const showAnnouncement = async () => { console.log("打开公告"); dataStore.isFeedback = true; // 显示用户反馈页面 @@ -1098,6 +1124,9 @@ const goChange = async () => { // 8.18金币兑换Token end onMounted(async () => { + // 检查是否需要显示Token规则提示框 + checkTokenRuleOnPageLoad(); + throttledJudgeDevice(); // 禁用全局触摸滚动 touchmoveHandlerRef = touchmoveHandler; @@ -1159,6 +1188,8 @@ onMounted(async () => { sessionStorage.removeItem("activeLevel"); sessionStorage.setItem("rechargeFlag", "0"); } + + }); onUnmounted(() => { @@ -1637,6 +1668,34 @@ onUnmounted(() => { 尊敬的用户,恭喜您成功兑换:{{ activeLevel.calculatedPosition }} Token + + +