Skip to content

Commit 700428e

Browse files
committed
feat: 유저 스토어 제작
1 parent 6b2ff40 commit 700428e

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

Diff for: frontend/src/store/useUserStore.ts

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
import { create } from 'zustand';
2+
import { persist } from 'zustand/middleware';
3+
4+
import { User } from '@/types/user';
5+
6+
interface UserState {
7+
user: User;
8+
setUser: (user: User) => void;
9+
}
10+
11+
const useUserStore = create<UserState>()(
12+
persist(
13+
set => ({
14+
user: {
15+
userId: 0,
16+
userName: '',
17+
userEmail: '',
18+
createdAt: '',
19+
userType: 'GUEST',
20+
},
21+
22+
setUser: (newUser: User) => {
23+
set(() => ({ user: { ...newUser } }));
24+
},
25+
}),
26+
{
27+
name: 'user-info',
28+
partialize(state) {
29+
return { user: state.user };
30+
},
31+
},
32+
),
33+
);
34+
35+
export default useUserStore;

0 commit comments

Comments
 (0)