필요성
기존에는 바닐라 자바스크립트로 하던 프로젝트들이 리액트로 넘어오면서 패키지를 통해 계속 설치하니까 관리해야 할 파일들이 너무 많아졌다..
현재상황

사실 얼마 안되는 것 같아 보여도 저 src파일 안에 폴더를 또 열어보면 공부를 하려고 만든 jsx파일 3~4개씩 있다.
가끔 튜터님들께서 화면공유를 해주실 때 저 파일 이름 옆에 아이콘들이 있어 보기 편하겠다라고 생각했어서 찾아봤다.
구글링을 하니 Material Icon Theme를 설치하면 된다고 한다. 바로 설치하러..

설치 완료

요즘 한창 공부를 하고 있는 라이브러리 React
다양한 훅들에 대해서 배우고 있다.
나중에 복습하면서 React를 다시 정리해서 하나의 게시물로 올리고 지금은 간단하게 정리만 해서 넘어가자!
useEffect(() => {
// 부수 효과 로직
return () => {
// 정리 로직 (선택적)
}
}, [의존성 배열])
const ref = useRef(초기값);
const value = useContext(MyContext);
function useMyCustomHook(args) {
// 커스텀 훅 로직
return 값;
}
리액트 애플리케이션에서 라우팅 기능을 제공하는 라이브러리
페이지 전환, URL 관리, 동적 라우팅
패키지 설치 필요 :
yarn add react-router-dom
or
npm install react-router-dom
주요 개념, 사용법
BrowserRouter
리액트 앱의 최상위 컴포넌트로, 브라우저의 히스토리 API를 활용하여 URL 관리
<BrowserRouter> 태그로 감싸줘야 함
Route
특정 URL에 매핑되는 컴포넌트를 렌더링
<Route path="경로" component={컴포넌트} /> 형태로 사용
Link
다른 페이지로 이동할 수 있는 링크 생성
<Link to="경로">링크 텍스트</Link> 형태로 사용
Switch
여러 개의 Route 중 가장 먼저 매칭되는 하나만 렌더링
<Switch> 태그로 감싸서 사용
useHistory
프로그래밍 방식으로 페이지 이동 가능
const history = useHistory(); history.push('/경로');
useParams
URL 파라미터 접근
const { id } = useParams();
useEffect는 컴포넌트 생명주기 메서드를,
useRef는 컴포넌트 수명주기에 걸쳐 유지되는 참조 객체를,
useContext는 전역 상태 관리를,
memoization은 함수 호출 결과 캐싱을,
custom hook은 재사용 가능한 hook 함수 정의를,
RRD는 리액트 앱의 라우팅 기능을 제공
오늘까지만 운동 쉬고 내일 다시 하자..
사실 몸이 힘든게 아닌데 너무 많은게 한번에 주입되서 혼란스러운 느낌..?