지금까지의 웹사이트는 페이지 이동 시 매번 '페이지 전체'를 불러와야 했고 이는 사용자와 서비스 사이의 상호작용이 증가되어 트랙픽 증가와 사용자 경험의 저하를 야기했다.
하지만, SPA가 등장한 이후로 업데이트가 필요한 부분만 새로 불러오는게 가능해졌다.HTML 문서 전체가 아니라 필요한 부분만 데이터만 받아, JavaScript가 데이터를 조작하고 HTML 요소를 생성하여 화면에 보여주는 방식은 싱글 페이지 애플리케이션이 2000년대 중반부터 보편화됐다.
즉,SPA(Single Page Application)이란, 서버로부터 완전한 새로운 페이지를 불러오지 않고 페이지 갱신에 필요한 데이터만 받아 그 정보를 기준으로 현재의 페이지를 업데이트함으로써 사용자와 소통하는 웹 어플리케이션이나 웹 사이트를 말한다.
장점
단점
다른 주소에 따라 다른 화면을 보여주는 과정을 경로에 따라 변경한다는 의미로 라우팅(Rounting)이라고 한다. 하지만 React 자체에는 이러한 기능이 내장되어 있지 않아 우리가 직접 주소마다 다른 뷰를 보여주도록 지정해야 한다.
React SPA에서는 라우팅을 위해 React Router라는 라이브러리를 가장 많이 사용한다.
<BrowserRouter>
: 라우터 역할<Routes>
: 경로를 매칭하는 역할 <Route>
: 경로를 매칭하는 역할 <Link>
: 경로를 변경하는 역할설치 명령어
npm install react-router-dom@^6.3.0
import 구문
import {BrowserRouter, Routes, Route, Link} from "react-router-dom";