localStorage

This commit is contained in:
star7th
2025-04-12 09:50:44 +08:00
parent 8bde24add6
commit d8652af2aa
+8 -8
View File
@@ -16,9 +16,9 @@ import { useLanguage } from '@/context/LanguageContext';
export default function Home() { export default function Home() {
const { t, language } = useLanguage(); const { t, language } = useLanguage();
const [activeCategory, setActiveCategory] = useState(() => { const [activeCategory, setActiveCategory] = useState(() => {
// 从 sessionStorage 获取上次选择的分类,如果没有则默认为 "all" // 从 localStorage 获取上次选择的分类,如果没有则默认为 "all"
if (typeof window !== 'undefined') { if (typeof window !== 'undefined') {
return sessionStorage.getItem('lastActiveCategory') || "all"; return localStorage.getItem('lastActiveCategory') || "all";
} }
return "all"; return "all";
}); });
@@ -217,10 +217,10 @@ export default function Home() {
const isPrefetched = prefetchedTools.has(toolCode); const isPrefetched = prefetchedTools.has(toolCode);
// 检查是否是首次访问该工具 // 检查是否是首次访问该工具
const isFirstVisit = !sessionStorage.getItem(`visited-${toolCode}`); const isFirstVisit = !localStorage.getItem(`visited-${toolCode}`);
// 记录已访问工具 // 记录已访问工具
sessionStorage.setItem(`visited-${toolCode}`, 'true'); localStorage.setItem(`visited-${toolCode}`, 'true');
// 打印调试信息 - 开发环境 // 打印调试信息 - 开发环境
if (process.env.NODE_ENV === 'development') { if (process.env.NODE_ENV === 'development') {
@@ -230,13 +230,13 @@ export default function Home() {
// 如果已预加载,直接导航,不显示loading // 如果已预加载,直接导航,不显示loading
if (isPrefetched) { if (isPrefetched) {
// 在导航前存储一个标志,表示这是从主页导航过来的 // 在导航前存储一个标志,表示这是从主页导航过来的
sessionStorage.setItem('from_homepage', 'true'); localStorage.setItem('from_homepage', 'true');
router.push(`/tools/${toolCode}`); router.push(`/tools/${toolCode}`);
return; return;
} }
// 在导航前存储一个标志,表示这是从主页导航过来的 // 在导航前存储一个标志,表示这是从主页导航过来的
sessionStorage.setItem('from_homepage', 'true'); localStorage.setItem('from_homepage', 'true');
const loadingId = 'loading-indicator-' + Date.now(); const loadingId = 'loading-indicator-' + Date.now();
const loadingEl = document.createElement('div'); const loadingEl = document.createElement('div');
@@ -466,8 +466,8 @@ export default function Home() {
// 更新分类选择处理函数 // 更新分类选择处理函数
const handleCategoryChange = (categoryCode: string) => { const handleCategoryChange = (categoryCode: string) => {
setActiveCategory(categoryCode); setActiveCategory(categoryCode);
// 保存到 sessionStorage // 保存到 localStorage
sessionStorage.setItem('lastActiveCategory', categoryCode); localStorage.setItem('lastActiveCategory', categoryCode);
}; };
return ( return (