WEB/React
[React] useLocation 훅 이해하기
explorer999
2024. 5. 22. 01:42
- useLocation훅은 현재 url의 위치 정보를 반환한다.
- 이 정보에는 경로명, 검색, 해시 등 다양한 url관련 정보가 표시된다.
- useSearchParams 클래스: url의 쿼리 문자열을 쉽게 파싱하고 조작할 수 있는 웹 API이다. 얘를 통해서 쿼리 파라미터를 추출하고 값을 읽거나 설정할 수 있다.
<useLocation 작동 원리>
1) const location = useLocation();
2) const queryParams = new URLSearchParams(location.search);
3) const release_date = queryParams.get('release_date'); //이때 이제 release_date를 가져오게 되는 것이다.
1) useLocation을 사용해서 현재 url의 위치 정보를 얻는다.
const location = useLocation();
여기서 location 객체는 현재의 url정보를 포함한다.
예를 들어서 url이 'http://example.com/movie/Inception?release_date=2010-07-16'인 경우, location 객체는 다음과 같은 정보를 포함한다.
{
"pathname":"/movie/Inception",
"search" : "?release_date = 2010-07-16",
"hash": "",
....기타 정보들...
}
2) location.search를 사용하여 쿼리 문자열을 얻는다.
const queryParams = new URLSearchParams(location.search);
여기서 location.search는 url의 쿼리 문자열 부분을 포함한다.
URLSearchParams 생성자에다가 location.search를 전달하여 'queryParams' 객체를 생성하는 것이다.
3) queryParams.get('release_date')를 사용하여 특정 쿼리 파라미터 값을 추가한다.
const release_date = queryParams.get('release_date');
여기서 queryParams.get('release_date')는 'release_date' 파라미터의 값을 반환한다.