- 修复DashboardLayout中的退出登录函数,确保清除所有认证信息 - 恢复_app.tsx中的认证逻辑,确保仪表盘页面需要登录访问 - 完善退出登录流程:清除本地存储 -> 调用登出API -> 重定向到登录页面 - 添加错误边界组件提升用户体验 - 优化React水合错误处理 - 添加JWT令牌验证API - 完善各个仪表盘页面的功能和样式
17 lines
394 B
TypeScript
17 lines
394 B
TypeScript
import { useEffect, useState } from 'react';
|
|
|
|
/**
|
|
* 检测组件是否在客户端已挂载的 hook
|
|
* 用于避免服务器端渲染和客户端渲染不一致导致的水合错误
|
|
*/
|
|
export function useClientMount(): boolean {
|
|
const [isMounted, setIsMounted] = useState(false);
|
|
|
|
useEffect(() => {
|
|
setIsMounted(true);
|
|
}, []);
|
|
|
|
return isMounted;
|
|
}
|
|
|
|
export default useClientMount;
|