Route fix

This commit is contained in:
icy
2025-10-31 13:49:05 +08:00
parent 904698504f
commit fcf25706c1
3 changed files with 19 additions and 9 deletions

View File

@@ -73,11 +73,11 @@ function App() {
return () => window.removeEventListener('hashchange', handleHashChange); return () => window.removeEventListener('hashchange', handleHashChange);
}, []); }, []);
// 切换页面时更新URL hash // 切换页面时更新URL hash (当前通过按钮直接调用setCurrentPage这个函数暂时保留用于未来扩展)
const navigateToPage = (page: Page) => { // const navigateToPage = (page: Page) => {
setCurrentPage(page); // setCurrentPage(page);
window.location.hash = page === 'competition' ? '' : 'trader'; // window.location.hash = page === 'competition' ? '' : 'trader';
}; // };
// 获取trader列表 // 获取trader列表
const { data: traders } = useSWR<TraderInfo[]>('traders', api.getTraders, { const { data: traders } = useSWR<TraderInfo[]>('traders', api.getTraders, {

View File

@@ -22,13 +22,15 @@ export function Header({ simple = false }: HeaderProps) {
<h1 className="text-xl font-bold" style={{ color: '#EAECEF' }}> <h1 className="text-xl font-bold" style={{ color: '#EAECEF' }}>
{t('appTitle', language)} {t('appTitle', language)}
</h1> </h1>
<p className="text-xs mono" style={{ color: '#848E9C' }}> {!simple && (
{t('subtitle', language)} <p className="text-xs mono" style={{ color: '#848E9C' }}>
</p> {t('subtitle', language)}
</p>
)}
</div> </div>
</div> </div>
{/* Right - Language Toggle */} {/* Right - Language Toggle (always show) */}
<div className="flex gap-1 rounded p-1" style={{ background: '#1E2329' }}> <div className="flex gap-1 rounded p-1" style={{ background: '#1E2329' }}>
<button <button
onClick={() => setLanguage('zh')} onClick={() => setLanguage('zh')}

View File

@@ -137,6 +137,10 @@ export function AuthProvider({ children }: { children: React.ReactNode }) {
localStorage.setItem('auth_token', data.token); localStorage.setItem('auth_token', data.token);
localStorage.setItem('auth_user', JSON.stringify(userInfo)); localStorage.setItem('auth_user', JSON.stringify(userInfo));
// 跳转到首页
window.history.pushState({}, '', '/');
window.dispatchEvent(new PopStateEvent('popstate'));
return { success: true, message: data.message }; return { success: true, message: data.message };
} else { } else {
return { success: false, message: data.error }; return { success: false, message: data.error };
@@ -166,6 +170,10 @@ export function AuthProvider({ children }: { children: React.ReactNode }) {
localStorage.setItem('auth_token', data.token); localStorage.setItem('auth_token', data.token);
localStorage.setItem('auth_user', JSON.stringify(userInfo)); localStorage.setItem('auth_user', JSON.stringify(userInfo));
// 跳转到首页
window.history.pushState({}, '', '/');
window.dispatchEvent(new PopStateEvent('popstate'));
return { success: true, message: data.message }; return { success: true, message: data.message };
} else { } else {
return { success: false, message: data.error }; return { success: false, message: data.error };