[React] CRA 보다 빠른 Vite로 React 프로젝트 생성하기

2024. 1. 24. 22:05·✍️ Today what I Learned _TIL
SMALL

240124 수 TIL ✍

저번 강의에서 CRA 를 배웠었다.

CRA 란, Create React App의 줄임말로 - 한 줄의 명령어 입력으로 React 프로젝트 개발의 필수요소를 자동으로 구성하는 방법이다. (리액트 프로젝트를 구성하는 데에 필요한 WebPack, babel, esline 등을 이 한 줄 명령어로 다 셋팅할 수 있다)

원래 이 방법,명령어로 리액트 프로젝트 생성하도록 배웠었는데
Vite('빗')로 생성하는게 더 빠르고 좋다고 한닷 !! 🐱‍🏍 CRA는 발전이 없고 정체되어서 그렇다나. ..
Vite는 프론트엔드 툴로, CRA 보다 Vite를 사용하면 개발 시 속도도 빠르고 메모리도 덜 잡아먹어 좋다고 한다.

(React 뿐만 아니라 다른 자바스크립트 프레임워크 -Vue, Vanilla 등을 통한 프로젝트 역시 생성 가능함)

그럼 기존의 CRA 와, Vite를 사용한 방법 모두 알아보고 리액트 프로젝트를 생성해보자 😺


먼저 리액트 프로젝트를 생성하려면
윈도우는 git bash나 power shell에서, 맥은 터미널terminal에서 아래 코드를 입력하면 된다.
(vs code의 터미널이라거나)

기존 git 명령어로 (ls : 현재 디렉토리 위치 확인 / cd 폴더이름 : 리액트 프젝 생성하고픈 폴더로 이동 등)
원하는 폴더로 이동 후

 

기존의 CRA 명령어는,

  • yarn create react-app 생성할 프로젝트폴더명 :
    해당 이름으로 프로젝트 폴더가 생성되고, 그 안에 react 프로젝트가 생성된다.

혹은

  • npx create-react-app 생성할 프로젝트폴더명
    (+ yarn을 쓰는 경우, 해당 패키지 매니저의 버전이 올라가면서 오류가 발생할 수 있다고 한당 .. )

로 프로젝트를 생성하고, 이후 프로젝트를 실행 (시작) 하려면 yarn start 나 npm start 를 입력하면 된다

(근데 내 경우에도 정말 시작하는데 오래걸렸다 .. ㅠ-ㅠ 인내심 시험.. )

 

Vite로 생성하는 명령어는,

yarn create vite 혹은 npm create-vite 를 쓰면 되고,

이후 선택하는 부분에선,
사용할 프레임워크 (여기선 React) 를 선택해주고,
variant를 선택하라고 뜨는 부분은 TypeScript나 JavaScript를 선택하면 된다.
+SWC 는 성능이 더 좋고 별 큰 차이는 없어서 그냥 이거 선택하는 걸로.. (그래서 JavaScript + SWC 선택)

프로젝트 실행은

yarn dev 혹은 npm run dev 명령어를 치면 된다.

local: 주소가 뜰텐데, 그 주소 링크를 ctrl+클릭 으로 타고 들어가면 열린다.

 

그 외 CRA와 Vite의 차이

CRA로 생성했을 때는 index.html파일이 public폴더 안에 있는데,
Vite로 생성 시 해당 파일이 public안이 아닌 밖에 나와있다.  그 외에는 폴더 구조 등 동일하다. 

또 직접 해보니 확실히 빠른 느낌?! ⚡
그리고 npm 으로 CRA 했을 때와 다르게, 초기 설정이 다크 모드 였담 !!!
이는 Vite의 기본 설정으로, 바꾸고싶다면 index.css 파일에서 바꿔주면 된다. (background-color 바꿔주기)


그 외 Vite에 관한 건, 공식 (한글번역) 문서 페이지를 참고해보자 !
https://ko.vitejs.dev/guide/

SMALL

'✍️ Today what I Learned _TIL' 카테고리의 다른 글

[개인 Project] My To-Do List -React페이지 보완하기 (추가,삭제,완료버튼+날짜입력 및 오름차/내림차순 정렬 과제하기)  (0) 2024.01.29
[Algorithm_JS] 정수 내림차순으로 배치하기  (2) 2024.01.28
[Algorithm_JS] 프로그래머스 문제풀이 : 정수 제곱근 판별  (1) 2024.01.26
[개인 Project] My To-do List 페이지 만들기 _ 간단한 회고  (0) 2024.01.24
[240102 TIL] 웹개발 기초 3~5주차 완강 / JS 문법 1주차 (Fetch, Firebase, JS 특징과 변수 )  (2) 2024.01.02
'✍️ Today what I Learned _TIL' 카테고리의 다른 글
  • [Algorithm_JS] 정수 내림차순으로 배치하기
  • [Algorithm_JS] 프로그래머스 문제풀이 : 정수 제곱근 판별
  • [개인 Project] My To-do List 페이지 만들기 _ 간단한 회고
  • [240102 TIL] 웹개발 기초 3~5주차 완강 / JS 문법 1주차 (Fetch, Firebase, JS 특징과 변수 )
련디
련디
FE - 개발 공부의 기록
  • 련디
    Ryeon's Devstory
    련디
  • 전체
    오늘
    어제
    • 분류 전체보기 (69)
      • 🪴 JavaScript & TypeScript (11)
        • 🧩 Algorithm (6)
      • 🪴 React (12)
      • 🪴 Next.js (8)
      • 🪴 HTML & CSS (2)
      • 🪴 DB & BaaS (5)
      • 🪴 Git &Github (0)
      • ✍️ 프로젝트 과정 & 회고 (18)
      • ✍️ Today what I Learned _T.. (11)
      • 🕊️ IT 아티클 (0)
      • etc. (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • My Github 😺
    • 네이버 블로그 🎵🎧 (일상,음악 등)
  • 공지사항

  • 인기 글

  • 태그

    리액트쿼리
    useMutation
    의존성배열
    axios
    오블완
    렌더링패턴
    reacthook
    reactquery
    NVM
    배열 메서드
    티스토리챌린지
    컴포넌트분리
    비동기통신
    useEffect
    Next.js
    Supabase
    에러
    react
    티스토리블로그스킨
    json-server
    웹개발 기초
    State
    route handler
    타입스크립트
    Vite
    Array.filter
    fetch
    tailwind
    BAAS
    props
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
련디
[React] CRA 보다 빠른 Vite로 React 프로젝트 생성하기
상단으로

티스토리툴바