diff --git a/web/src/routes/Entry/LoginView.tsx b/web/src/routes/Entry/LoginView.tsx index b4b83190..968d8825 100644 --- a/web/src/routes/Entry/LoginView.tsx +++ b/web/src/routes/Entry/LoginView.tsx @@ -5,6 +5,7 @@ import React, { useCallback, useState } from 'react'; import { Spinner } from '../../components/Spinner'; import { string } from 'yup'; import { useHistory } from 'react-router'; +import { setUserJWT } from '../../utils/jwt-helper'; /** * TODO: @@ -42,10 +43,11 @@ export const LoginView: React.FC = React.memo(() => { .required('密码不能为空') .validate(password); - await loginWithEmail(email, password); + const data = await loginWithEmail(email, password); - // TODO - }, [email, password]); + await setUserJWT(data.token); + history.push('/main'); + }, [email, password, history]); const toRegisterView = useCallback(() => { history.push('/entry/register'); diff --git a/web/src/routes/Entry/RegisterView.tsx b/web/src/routes/Entry/RegisterView.tsx index b8525a98..19e10a39 100644 --- a/web/src/routes/Entry/RegisterView.tsx +++ b/web/src/routes/Entry/RegisterView.tsx @@ -4,6 +4,7 @@ import { Spinner } from '../../components/Spinner'; import { string } from 'yup'; import { Icon } from '@iconify/react'; import { useHistory } from 'react-router'; +import { setUserJWT } from '../../utils/jwt-helper'; /** * 注册视图 @@ -26,8 +27,8 @@ export const RegisterView: React.FC = React.memo(() => { const data = await registerWithEmail(email, password); - // TODO - console.log(data); + await setUserJWT(data.token); + history.push('/main'); }, [email, password]); const toLoginView = useCallback(() => { diff --git a/web/src/routes/Main.tsx b/web/src/routes/Main.tsx index 04d90395..9231fa86 100644 --- a/web/src/routes/Main.tsx +++ b/web/src/routes/Main.tsx @@ -19,7 +19,7 @@ const NavbarNavItem: React.FC<{ export const MainRoute: React.FC = React.memo(() => { return ( - <div className="flex"> + <div className="flex h-full"> <div className="w-16 bg-gray-900 flex flex-col justify-start items-center pt-4 pb-4 p-1"> {/* Navbar */} <div className="flex-1">