Skip to content

Commit ff9a543

Browse files
committed
feat: integrate router for search results navigation and update query parameters
1 parent b898ab1 commit ff9a543

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

web/src/modules/search/components/SearchPageComponent.tsx

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { faMagnifyingGlass } from '@fortawesome/free-solid-svg-icons';
44
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
55
import { UserSearchViewDto } from '@shared/validation/user/dto/UserSearchView.dto';
66
import Image from 'next/image';
7-
import { useSearchParams } from 'next/navigation';
7+
import { useRouter, useSearchParams } from 'next/navigation';
88
import { useEffect, useState } from 'react';
99

1010
import { useSearch } from './client/context/useSearch';
@@ -69,8 +69,9 @@ export const SearchPageComponent = () => {
6969
const searchParams = useSearchParams();
7070
const [currentPage, setCurrentPage] = useState(1);
7171

72-
const { data, query, isLoading, limit, page, fetchSearchResults } =
73-
useSearch();
72+
const { data, query, isLoading, limit, fetchSearchResults } = useSearch();
73+
74+
const router = useRouter();
7475

7576
useEffect(() => {
7677
const query = searchParams.get('query') || '';
@@ -86,8 +87,13 @@ export const SearchPageComponent = () => {
8687
const query = searchParams.get('query') || '';
8788
const limit = searchParams.get('limit') || '20';
8889

89-
fetchSearchResults(query, newPage, parseInt(limit));
90-
setCurrentPage(newPage);
90+
const queryParam = new URLSearchParams({
91+
page: newPage.toString(),
92+
limit: limit,
93+
query,
94+
});
95+
96+
router.push(`/search-user?${queryParam.toString()}`);
9197
};
9298

9399
return (

0 commit comments

Comments
 (0)