$ npx create-react-app [프로젝트명]
리액트는 index.html에서 쓰여지며, index.js에서 내용을 넣어준다.
App.js에는 경로가 들어가서, index.js에서 App.js를 실행한다.
라우팅 : 페이지 이동
라우터 : 라우팅 해주는 도구
SPA : HTML이 하나인 웹 어플리케이션
라우터 설치 : npm install react-router-dom
src 밑에 Router.js파일 생성
import Main from './pages/Main/Main';
import { BrowserRouter, Routes, Route } from 'react-router-dom';
<BrowserRouter>
<Routes>
<Route path='/' element={<Main />} /> </Routes>
</BrowserRouter>
Route 이동하기
(1) Link 컴포넌트 사용하기
a태그와 Link의 차이 : a태그는 외부사이트를 이동할 때 사용한다. Link 컴포넌트는 새로고침하지 않고 그린다.
import { Link } from 'react-router-dom';
const Login = () => {
return <Link to='/signup'>회원가입</Link>;
};
(2) useNavigate hook 사용하기
import { useNavigate } from 'react-router-dom';
const Login = () => {
const navigate = useNavigate();
const goToMain = () => {
navigate('/main');
};
return (
<button className='loginBtn' onClick={goToMain}>
로그인
</button>
);
}
조건을 가져야 할때는 useNavigate를 쓴다.
import { useNavigate } from "react-router-dom";
const navigate = useNavigate();
onClick={() => navigate("/signin")
useNavigate를 이용한다.
<img src={'/images/다람쥐.jpg'} alt="myPicture"/>
이미지를 public폴더에 넣은 경우는 절대 경로로 활용할 수 있다.
public이다.