diff --git a/apps/api/src/auth/auth.service.ts b/apps/api/src/auth/auth.service.ts index 9ee801797..ae24dafec 100644 --- a/apps/api/src/auth/auth.service.ts +++ b/apps/api/src/auth/auth.service.ts @@ -43,6 +43,10 @@ export class AuthService { const payload = { userId: res.id, username: dto.name }; return { token: await this.jwtService.signAsync(payload), + user: { + ...payload, + phone: dto.phone, + }, }; } } diff --git a/apps/client/api/auth.ts b/apps/client/api/auth.ts index 6c4ea1754..bf153a1a1 100644 --- a/apps/client/api/auth.ts +++ b/apps/client/api/auth.ts @@ -20,10 +20,10 @@ interface LoginVo { user: UserInfo; } -export async function login(dto: LoginDto) { +export async function fetchLogin(dto: LoginDto) { return await http.post("/auth/login", dto); } -export async function signUp(dto: SignUpDto) { +export async function fetchSignUp(dto: SignUpDto) { return await http.post("/auth/signup", dto); } diff --git a/apps/client/components/main/Header.vue b/apps/client/components/main/Header.vue deleted file mode 100644 index 515d6cdba..000000000 --- a/apps/client/components/main/Header.vue +++ /dev/null @@ -1,41 +0,0 @@ - - - - - diff --git a/apps/client/composables/auth.ts b/apps/client/composables/auth.ts new file mode 100644 index 000000000..758021ff5 --- /dev/null +++ b/apps/client/composables/auth.ts @@ -0,0 +1,43 @@ +import { setToken } from "~/utils/token"; +import { fetchLogin, fetchSignUp } from "~/api/auth"; +import { useUserStore } from "~/store/user"; + +async function login({ phone, password }: { phone: string; password: string }) { + const userStore = useUserStore(); + + const data = await fetchLogin({ + phone, + password, + }); + + setToken(data.token); + userStore.initUser(data.user); +} + +async function signup({ + phone, + name, + password, +}: { + phone: string; + name: string; + password: string; +}) { + const userStore = useUserStore(); + + const data = await fetchSignUp({ + phone, + name, + password, + }); + + setToken(data.token); + userStore.initUser(data.user); +} + +export function useAuth() { + return { + login, + signup + }; +} diff --git a/apps/client/pages/Auth/Login.vue b/apps/client/pages/Auth/Login.vue index 977c5c541..f33f2ba87 100644 --- a/apps/client/pages/Auth/Login.vue +++ b/apps/client/pages/Auth/Login.vue @@ -1,98 +1,86 @@ diff --git a/apps/client/pages/Auth/SignUp.vue b/apps/client/pages/Auth/SignUp.vue index 591ae16d4..df7d98232 100644 --- a/apps/client/pages/Auth/SignUp.vue +++ b/apps/client/pages/Auth/SignUp.vue @@ -12,7 +12,7 @@
- + @@ -52,9 +52,8 @@