[React] react-router-dom

Dorong·2023년 1월 5일
0

React

목록 보기
12/29

✅ SPA와 react-router-dom

  • 페이지가 하나로 이루어진 SPA(Single Page Application)
  • 기술적으로는 한 페이지만 존재하지만, 사용자가 경험하기에는 여러 페이지가 존재하는 것처럼 느껴짐
  • 다른 정보 요청 시 새로운 HTML을 요청하는 것이 아니라 브라우저의 History API를 사용해 브라우저의 주소창의 값만 변경하고 라우팅 설정에 따라 다른 페이지 보여줌
  • 리액트에서 라우트 시스템을 구축하기 위한 대표적 두 가지 선택지
    - React-Router ⬅️ 가장 많이 사용!!
    - Next.js

✅ router 사용하기

  • 터미널에서 설치

    터미널> npm install react-router-dom
    터미널> yarn add react-router-dom


🔸 index.jsx(tsx)파일에서

  • index.jsx(tsx)파일에서
  • BrowserRouter를 import 해주고
  • root.render() 내부에서 < App/>을 < BrowserRouter>로 감싸준다
import {BrowserRouter} from 'react-router-dom';
...
root.render(
    <BrowserRouter>
    	<App/>
    </BrowserRouter>
)

🔸 app.jsx(tsx)파일에서

  • Routes, Route, Link import 해주기
  • App() return문 내에서 < Routes>태그 안에 여러 < Route/> 넣어주기
  • Route에 필수적인 두 가지 속성
    => path = '/' (경로)
    => element = {< div>< /div>} (html문)
  • Route의 element 속성에 어떤게 들어가냐에 따라서 경로마다 바뀌는 내용이 일부 태그가 될 수도, 하나의 페이지가 될 수도 있음
import {Routes, Route, Link} from 'react-router-dom';
...
function App(){
	return(
		<Routes>
			<Route path='/' element={<span>main</span>}/>
			<Route path='/detail' element={<Detail/>}/>
		</Routes>
	)
}



<br><br><br>
🌟 잘못된 부분에 대한 말씀은 언제나 저에게 큰 도움이 됩니다. 🌟
👍 감사합니다!! 👍
profile
🥳믓진 개발자가 되겠어요🥳

0개의 댓글