Skip to content

Commit 8dfd2a5

Browse files
committed
[#153] feat: 현재 페이지 삭제 및 모든 페이지 삭제 대응 로직 구현
1 parent d194eee commit 8dfd2a5

File tree

1 file changed

+14
-4
lines changed

1 file changed

+14
-4
lines changed

frontend/src/hooks/useSocket.tsx

+14-4
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { blockMapState, pagesState } from '@/stores';
33
import { pageIO, pageListIO } from '@/socket';
44
import { BlockMap, Page } from '@/schemes';
55
import { useEffect } from 'react';
6-
import { pageUserCountState, lastUpdateState } from '@/stores/page';
6+
import { pageUserCountState, lastUpdateState, pageState } from '@/stores/page';
77

88
const doSomeThing = () => {};
99

@@ -12,11 +12,21 @@ const useSocket = () => {
1212
const setPages = useSetRecoilState(pagesState);
1313
const setPageUserCount = useSetRecoilState(pageUserCountState);
1414
const setLastUpdate = useSetRecoilState(lastUpdateState);
15+
const setPage = useSetRecoilState(pageState);
1516

1617
useEffect(() => {
17-
pageListIO.on('PageListUpdate', (pages: Page[]) => {
18-
setPages(pages);
19-
});
18+
pageListIO.on(
19+
'PageListUpdate',
20+
({ currentPageId, pages }: { currentPageId: string; pages: Page[] }) => {
21+
setPages(pages);
22+
const currentPage = pages.find((page) => page.id === currentPageId);
23+
if (currentPage) {
24+
setPage(currentPage);
25+
} else if (pages?.[0]) {
26+
setPage(pages?.[0]);
27+
}
28+
},
29+
);
2030

2131
pageListIO.on('allUserCount', (count: number) => {
2232
console.log(`allUserCount: ${count}`);

0 commit comments

Comments
 (0)