inflearn logo
강의

講義

知識共有

実務中心! FE入門者のためのReact

10-2. react-router 適用

[10-2] react-router 강의에서 BrowserRouter 를 감싸지 않고 페이지가 나오는 게 맞나요?

206

Codingbear

投稿した質問数 18

1

10-2 강의 내용에서 BrowserRouter 를 임포트 하고 나서 사용 안하고 Route를 구성하였습니다. 강의 내용대로 페이지 화면이 나와야 되는 데 에러가 발생합니다. BrowserRouter를 감싸지 않고서도 페이지 화면이 나오는 게 맞나요?

<div className="App">     
    <Routes>
        <Route path="/" element={<PageA />} />
        <Route path="/2" element={<PageB />} />
    </Routes>
</div>

react redux node.js sass swr router

回答 2

1

communityai8509

안녕하세요, 인프런 AI 인턴입니다. Coding bear님.

React에서 react-router-dom을 사용하여 라우트를 설정할 때, 반드시 Routes 컴포넌트를 BrowserRouter 내에 감싸야 합니다. 그렇지 않으면 라우팅 기능이 작동하지 않으며 에러가 발생할 수 있습니다.

BrowserRouter는 브라우저의 히스토리 API를 사용하여 라우터에 경로를 제공하는 역할을 하고, 모든 Route 컴포넌트는 BrowserRouter 또는 HashRouter 등의 Router 컴포넌트 안에 있어야 합니다.

아래는 수정된 예제입니다:

import { BrowserRouter as Router, Routes, Route } from 'react-router-dom';
import PageA from './PageA';
import PageB from './PageB';

function App() {
  return (
    <Router>
      <div className="App">
        <Routes>
          <Route path="/" element={<PageA />} />
          <Route path="/2" element={<PageB />} />
        </Routes>
      </div>
    </Router>
  );
}

export default App;

작성한 코드처럼 Router로 감싸주면 RoutesRoute 컴포넌트가 정상적으로 작동할 것입니다.

관련된 질문으로는 아래 링크를 참고하실 수 있습니다:
- React Router: Understanding the importance of Router Components

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

0

yejirang

루트의 index.js에서 <App /> 컴포넌트를
<BrowserRouter> 로 감싸주고 있어서 생략된게 아닌가 싶구요.

AI 자동답변은 링크오 404고 도움이 안되네요

라우터 궁금사항

0

36

1

자료 Git Source 주소 ??

0

64

1

교육자료 소스 바로 실행시..

0

78

1

교육자료 소스 바로 실행시..

0

58

1

13-1, 13-2 질문

0

121

1

12-2. Recoil -> Jotai 변환 코드 공유합니다.

4

210

1

recoil error 나시는 분들 보세요

3

124

1

어려워요 뭔소리죠 대체

3

313

1

사진이 잘 안보여요.

0

155

1

반복문 사용법은 안알려주고 주의사항만 알려주시는거군요

1

242

0

hooks recoil불러오는 과정에서 src내부에 있는 파일이 안불러와집니다

0

120

1

제발 코드샌드박스 링크 좀 달아주세요....

2

526

2

App.js > QuestionBox > answers ={answers[step]}, QuestionBox.js > answer

0

141

0

4.2 React 렌더링 과정 에서 왜 컴포넌트가 두 번씩 호출될까요?

0

174

1

useEffect 관련 질문드립니다.

0

136

0

jotai로 변경했을 때 코드

0

428

3

리코일이 업데이트가 안된지 오래됐다고하네요

3

459

1

학습 링크

0

360

1

12-2 질문

0

658

3

5-1 학습링크

0

269

1

7-5. 메모 삭제 기능에 문제가 있습니다.

1

238

0

실습링크

0

323

1

2-6 구구단 배열 넣어서 출력시 질문

0

145

1

[2-1] 강의링크 메모용

3

921

1