[React] 검색기능(검색한 단어를 query parameter로 붙여서 queryString url 만들기)

김채운·2022년 12월 22일
0

React 프로젝트에서 검색기능을 구현하려고 검색페이지 Router를 생성하던중에 의문이 생겼다. 보통 검색할 단어를 입력하고 그 입력한 단어의 데이터를 보여주는 페이지로 이동하게 되면 url 주소가 그냥 /search 가 아니라 /search?key=value 이런식으로 query parameter가 붙는데
ex) 마켓컬리 사이트에서 빵을 검색해보았다. 이런식의 url을 만들고 싶었다.

처음엔 단순하게 Router 생성할 때 상세페이지처럼 /search/:id url파라미터를 만들어줄 때 처럼 하고 useNavigate으로 이동경로 입력해줄 때 /search?query=${search}형식으로 해줬는데 빈 페이지가 나왔다. Search 페이지 Component를 보여주지 않은 것으로 보아 /search경로로 이동한 게 아닌 그냥 /search?query=${search}이 경로로 따로 이동을 한 것으로 보인다.

그래서 이것저것 찾아보았는데,,, 정말 허무할 정도로 단순했더랬다.

그냥 router 생성할 때 /search하고 Search Component 연결해주고
useNavigate으로 이동경로 설정할 때 위에처럼 /search?query=${search} 이렇게 설정해주면 내가 원하는대로 queryString url이 형성되면서 내가 원하는 Search 페이지 Component로 잘 이동한 걸 확인할 수 있었다.

0개의 댓글