[TIL/React] 2023/03/04
라우터란?: 여러 웹페이지를 만드는 지름길 'Route'는 다음과 같이 '경로'라는 뜻을 갖고 있다. 여러 웹페이지를 만들고 경로에 따라서 이동할 수 있게 만들어 주는 것이 라우터의 역할이다. 우선 react router를 설치하는 명령어를 터미널에 입력해서 설치를
라우터란?: 여러 웹페이지를 만드는 지름길
'Route'는 다음과 같이 '경로'라는 뜻을 갖고 있다. 여러 웹페이지를 만들고 경로에 따라서 이동할 수 있게 만들어 주는 것이 라우터의 역할이다.

우선 react router를 설치하는 명령어를 터미널에 입력해서 설치를 완료했다. 이후 {BrowserRouter}라는 것을 index.js 상에서 import하고 App component를 BrowserRouter라는 이름의 태그로 감싸주었다.

홈페이지와 어바웃페이지, 두 페이지가 있다고 가정하고 둘을 라우터를 사용해서 따로 접근하도록 설정했다.


사용법은 다음과 같다.

구체적인 경로와 요소를 지정했고, 결과는 다음과 같다.


Link, Navigate: 페이지 사이를 이동하는 법
페이지를 이동할 때마다 URL을 직접 입력하는 것은 번거롭다. 'Link'를 통해 더욱 간편하게 해당 내용을 구성해 봤다.

클릭하면 about page로 자연스럽게 넘어간다.

다음으로는 'useNavigate'라는 React Hook을 사용해서, about page에서 home page로 이동하도록 했다.

Restful Route
'Restful Route'의 개념을 이해하기 위해 두 가지 페이지를 만들었다.


쇼핑몰을 운영한다고 가정하자. 전체 상품을 소개하는 페이지가 있고, 그 중 하나의 상품을 클릭했을 때 나오는 detail 페이지가 있다. detail page의 '경로명'을 지정하기가 상당히 까다로웠다. 경로명 자체를 정하는 것도 어려웠으며, 만약 상품의 개수가 100개가 넘는다면 매번 해당하는 경로명을 지정하는 것은 지나치게 비효율적일 것이다.

위의 문제를 해결하기 위해 router의 기능을 이용해서 각각의 경로를 지정하되 ':id'를 활용했다. ':id'는 parameter로서 작동한다. url의 해당 부분에 어떠한 값을 입력하더라도 detail page로 넘어간다.
다양한 웹 페이지를 만들 때 'URL 디자인'을 어떻게 할 것인가에 관한 논의가 있었고, 최근에 가장 많이 사용하는 'URL 디자인 패던' 중 하나가 바로 'Restful Routes'라는 것이다.

useParams: URL의 파라미터값을 읽어오자

id로 보낸 parameter 값을 읽어오기 위해 'useParams'라는 Reack Hook을 사용했다.

'params'라는 것을 콘솔에 찍어보면, 'key:value' 형태의 객체가 반환된다. 객체의 'key 값'을 알고 있기에, key 값을 바로 h1에 적용한 모습이다.
회고
학교 공부도 방치할 수는 없으니... 오늘은 회귀분석을 공부해야겠다.. ㅜ 내일도 화이팅!
More to read
Amazon VPC Architecture 이해하기
새로운 프로젝트를 기획하며, 개발에서 무엇을 가장 먼저 고민해야 하는지 다시 돌아보게 되었습니다.한때는 프론트엔드가 모든 설계의 출발점이라고 믿었습니다. 유저가 무엇을 보고, 어떤 흐름에서 머무르고 이탈하는지에 대한 이해 없이 서비스를 만든다는 건 불가능하다고 생각했기
'원사이트'프론트엔드 관점으로 알고리즘 이해하기
오랜만에 방법론에 관한 글을 쓰게 되었습니다. 최근 상황은 이렇습니다. SSAFY에서는 하루에 엄청난 양의 알고리즘 문제들을 과제로 수행하게 됩니다. 그 과정에서, '구현력'이 매우 떨어진다는 생각이 들었습니다. 완전히 어려운 문제라면 '아쉬움'이라는 감정조차 느끼지
SubnetVPC 설계의 시작: IP와 Subnet
반복되는 루틴 속에서 얻은 안정감을 발판 삼아, 이제는 기술적 스펙트럼을 넓히기 위한 개인 프로젝트에 착수하고자 합니다.이번 프로젝트의 목표는 단순한 포트폴리오 구축을 넘어, 실제 서비스 수준의 블로그 시스템 구현과 다국어 처리 적용 등 실무에 가까운 역량을 한 단계