fix: 登录持久化修复+缓存清零+跨浏览器一致性

This commit is contained in:
root
2026-10-16 17:56:46 +08:00
parent 13c3f19691
commit 08b1854169
15 changed files with 26 additions and 25 deletions
+2 -2
View File
@@ -12,7 +12,7 @@ function LogoMark() {
);
}
export function LoginPage({ onAuthed }: { onAuthed: () => void }) {
export function LoginPage() {
const [mode, setMode] = useState<'login' | 'register'>('login');
const [username, setUsername] = useState('');
const [password, setPassword] = useState('');
@@ -34,7 +34,7 @@ export function LoginPage({ onAuthed }: { onAuthed: () => void }) {
if (!invite.trim()) throw new Error('请填写邀请码');
await serverRegister(username.trim(), password, invite.trim());
}
onAuthed();
setTimeout(() => window.location.reload(), 200);
} catch (e) {
setError((e as Error).message);
} finally {
+1 -1
View File
@@ -17,7 +17,7 @@ export function AppShell() {
}, []);
if (!authed) {
return <LoginPage onAuthed={() => setAuthed(true)} />;
return <LoginPage />;
}
return (
+2 -1
View File
@@ -40,7 +40,8 @@ function LogoMark() {
export function Sidebar({ open, onClose }: { open: boolean; onClose: () => void }) {
const qc = useQueryClient();
const meQ = useQuery({
queryKey: ['me'],
queryKey: ['me', getToken() ?? ''],
refetchOnMount: 'always',
queryFn: () => serverMe(),
enabled: !!getToken(),
retry: 0,
+1 -1
View File
@@ -7,7 +7,7 @@ import './styles/theme.css';
const queryClient = new QueryClient({
defaultOptions: {
queries: { retry: 1, refetchOnWindowFocus: false, staleTime: 15_000 }
queries: { retry: 1, refetchOnWindowFocus: true, staleTime: 0, gcTime: 0 }
}
});