Notice
Recent Posts
Recent Comments
Link
250x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Redux
- redux toolkit
- 협업프로젝트
- 자바스크립트
- sort
- 블럭요소
- couchcoding
- Redux store
- toString
- 콜백함수
- line-through
- first-child
- 인라인블럭
- db.json
- useSearchParams
- 자바스크립트배포
- javascript코딩테스트
- javascript React
- 카우치코딩
- React onClick
- redux 사용방법
- foreach
- react redux
- 6주포트폴리오
- JavaScript
- useParams
- react
- useEffect
- JSON
- React state
Archives
- Today
- Total
개발하는 루루언니
React : createBrowserRouter 을 통해 Router을 만들어보자. 본문
728x90
반응형
index .js
import { createBrowserRouter } from 'react-router-dom';
import { NotFound } from './page/NotFound';
import { Videos } from './page/Videos';
import { VideoDetail } from './page/VideoDetail';
const router = createBrowserRouter([
{
path:'/',
element:<App/>,
errorElement:<NotFound/>,
children:[
{index: true,element: <Videos/>},
{path:'videos',element: <Videos/>},
{path:'videos/:keyword' , element: <Videos/>},
{path:'videos/watch/:videoId' , element: <VideoDetail/>},
]
}
])
1. const router을 통해 createBrowserRouter을 만든다.
2. 그안에는 ( [ { } ] ) 이런식으로 되어있다.
3. 첫번째 객체 안에는 최상단의 위치인 <App/>을 넣어준다.
4. 에러가 나면 NotFound라는 페이지로 가게 컴포넌트를 만든다.
5. children 이라는 자식안에 또 [ ] 배열안에 { }객체를 넣어준다.
6. 그안에는 내가 만들고 싶은 페이지들을 넣는다.
7. index가 true면 Videos라는 메인 페이지
8. 경로가 videos여도 Videos 페이지
9. videos에 키워드를 입력하면 그 키워드에 맞는 Vidoes 페이지
10. videos/watch/:videoId 즉 비디오의 ID값이 들어간 애를 클릭하면 VideoDetail 페이지가 나오게 설정을 해둔다.
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
<React.StrictMode>
<RouterProvider router={router}/>
</React.StrictMode>
);
1. RouterProvider 을 사용함으로써 위에서 지정해준 애들 ( router) 을 프롭스로 보내준다.
2. 우산을 씌워주는 작업
<App.js > 에서 마지막 작업을 해줍니다.
import {Outlet} from 'react-router-dom'
import './App.css';
function App() {
return (
<>
<Outlet/>
</>
);
}
export default App;
1. APP 에서 자식요소들을 보여줄 수 있도록 Outlet 이라는걸 씁니다.
2. outleft은 react-router-dom에서 가져올 수 있게 import 해줍니다.
이렇게 url에 검색조건을 쓰면 잘나오는걸 확인할 수 있습니다.
728x90
'컴퓨터 정보 > 리액트' 카테고리의 다른 글
@tanstack react-query npm (0) | 2023.01.16 |
---|---|
React : 유튜브 검색창 만들어 보기 (1) | 2023.01.16 |
React : api를 json으로 가져와 먼저 사용하자 (0) | 2023.01.16 |
React : api키 포스트맨으로 사용해보기 🛠 (0) | 2023.01.16 |
React : 유튜브 api 를 써보자 (1) | 2023.01.16 |