강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

조은택님의 프로필 이미지
조은택

작성한 질문수

비전공자를 위한 진짜 입문 올인원 개발 부트캠프

react-router-dom 설치하기

경로 이동이 안됍니다..

작성

·

289

1

 

강의 내용 처럼 url주소로 이동해 봤는데 안돼네요. 뭐가 잘못 됬을까요> ㅜ

답변 4

1

조은택님의 프로필 이미지
조은택
질문자

vscode를 껏다 키니깐 갑자기 되네요 ㅎㅎㅎ 답변 감사합니다 

그랩님의 프로필 이미지
그랩
지식공유자

다행입니다 :) ㅎㅎ

1

조은택님의 프로필 이미지
조은택
질문자

잘 이해가 안가서 코드로 알려줄 수 있을까요?.. 강의에 써진 코드를 그대로 따라 썻는데 안돼네요 ㅠ

이렇게 app 위에 browerROUTER로 감싸긴 햇는데 이게 아닌가요?..

import { BrowserRouter } from "react-router-dom"; // BrowserRouter가 부모 컴포먼트로써 감싸야 페이지 이동 가능

ReactDOM.render(
  <React.StrictMode>
  <BrowserRouter> 
    <App /> 
  </BrowserRouter> 
  </React.StrictMode>,
  document.getElementById('root')
);

1

그랩님의 프로필 이미지
그랩
지식공유자

react-router를 사용하기 위해선 Router 컴포넌트를 switch 컴포넌트 상위에 꼭 넣어주셔야 합니다!

그랩님의 프로필 이미지
그랩
지식공유자

div 태그를 넣으면 정상적으로 react router가 동작하지 않습니다 ㅠ

"Router 컴포넌트를 switch 컴포넌트 상위에 넣어주어야 한다."가 어떤 의미인지 여쭈어봐도 될까요? 저도 글쓴이님처럼 강사님의 코드를 그대로 작성하였는데,  You should not use <Switch> outside a <Router> 이라는 오류가 뜹니다ㅠㅠ

작성한 App.js의 코드는 다음과 같습니다.

import "./App.css";
import MainPageComponent from "./main/index.js";
import "./index.css";
import { Switch, Route } from "react-router-dom";
import UploadPage from "./upload";
import ProductionPage from "./product";

function App() {
  return (
    <div>
      <Switch>
        <Route exact={true} path="/">
          <MainPageComponent />
        </Route>
        <Route exact={true} path="/product">
          <ProductionPage />
        </Route>
        <Route exact={true} path="/upload">
          <UploadPage />
        </Route>
      </Switch>
    </div>
  );
}

export default App;

1

조은택님의 프로필 이미지
조은택
질문자

react 코드 입니다

그리고 또 저는 <div>를 넣으면 오류가 나서 대신 browserouter 넣으니 되더라고요. div로 했는데 왜 오류가 났는지도 알려 주세요 ㅠㅠ

조은택님의 프로필 이미지
조은택

작성한 질문수

질문하기