728x90
npx create-react-app react-router0611
터미널 열어서 다운로드 해주기
npm install react-router-dom
다운로드 완료되면 package.json 에서 확인해야됨.
App.js 클래스형 컴포넌트로 변경
import { Component } from 'react';
import './App.css';
class App extends Component{
constructor(props){
super(props)
this.state ={
}
}
render(){
return(
<div id='App'>
</div>
)
}
}
export default App;
2. 라우터 돔 임포트하고 주소 지정해주기
Home = /
Profile = /profile
import { Component } from 'react';
import './App.css';
import {BrowserRouter, Routes, Route} from 'react-router-dom';
class App extends Component{
constructor(props){
super(props)
this.state ={
}
}
render(){
return(
<div id='App'>
<BrowserRouter>
<Routes>
<Route path='/' element={<Home/>}/>
<Route path='/profile' element={<Profile/>}/>
</Routes>
</BrowserRouter>
</div>
)
}
}
export default App;
3. components폴더에 Home.js , Profile.js / css폴더, 파일 만들어주기
App.js 에 임포트
App.css 기본 설정
*{
margin: 0;
padding: 0;
}
ul{
list-style-type: none;
}
a{
text-decoration: none;
}
#App{
width: 1200px;
height: 700px;
background-color: rosybrown;
margin: 0 auto;
}
4. Home.js 함수 컴포넌트로 써주기
이벤트가 딱히 없기 떄문에
import '../css/Home.css';
function Home(){
return(
<div id='home'>
홈
</div>
)
}
export default Home;
#home{
width: 90%;
height: 90%;
margin: 0 auto;
background-color: palegoldenrod;
}
Profile.js 도 함수형으로 만들어주기
import '../css/Profile.css';
function Profile(){
return(
<div id='profile'>
프로필
</div>
)
}
export default Profile;
#profile{
width: 90%;
height: 90%;
margin: 0 auto;
background-color: palegreen;
}
npm start 하면 첫화면은 Home.js 화면이 떠야함
localhost:3000/profile
Profile.js 뜨는지 확인
728x90
'React' 카테고리의 다른 글
[React] 라우터를 이용한 로케이션 객체 (0) | 2023.06.17 |
---|---|
[React] Router 버튼클릭시 주소이동 (0) | 2023.06.11 |
[React] 페이지네이션2 / 이전다음버튼, 현재페이지 버튼 하이라이트 (1) | 2023.06.11 |
[React] 페이지네이션 (0) | 2023.06.10 |
[React] To do list 데이터 배열+1 / map() (0) | 2023.06.05 |