패키지 설치 때 아무 생각 없이 설치하던 이번에 타입스크립트 rtk를 설치하면서 --save-dev를 왜 쓰는지 궁금해졌다.
--save-dev는 개발 의존성(development dependency) 으로 설치하겠다는 의미다.
사용하는 기준
- npm install some-package → 실행에 필요한 의존성
앱이 동작할 때 꼭 필요한 패키지들 (예: react, redux, @reduxjs/toolkit 등) - npm install --save-dev some-package → 개발할 때만 필요한 의존성
빌드, 타입 검사, 테스트 등에만 필요한 것 (예: @types/react-redux, eslint, typescript 등)
앱이 실행되기 위해 꼭 필요한 패키지 | react, react-dom, react-router-dom, axios, redux, @reduxjs/toolkit 등 | npm install |
개발 중에만 필요한 패키지 (타입, 도구, 테스트 등) | @types/패키지명, typescript, eslint, prettier, webpack, vitest 등 | npm install --save-dev or -D |
예시
react-redux | 리액트에서 리덕스를 쓰게 해주는 핵심 라이브러리 | npm install |
@types/react-redux | 타입스크립트용 타입 정의 파일 (개발 중만 필요) | npm install --save-dev |
eslint | 코드 스타일 검사기 (앱 실행엔 필요 없음) | npm install --save-dev |
axios | 서버랑 통신할 때 필요한 HTTP 클라이언트 (앱 실행 시 필요) | npm install |
공식 문서나 npm 페이지를 잘 보면 "This is only needed for development" 같은 문구가 써있기도 하다.
'[Study] 개발 공부' 카테고리의 다른 글
[알고리즘] 공부(reduce, parseInt 대체) (0) | 2025.03.20 |
---|---|
[Vanilla-JS] 고양이 사진 검색 사이트😺: 상세 기능 구현 (0) | 2025.03.13 |
[Vanilla-JS] 고양이 사진 검색 사이트😺 (0) | 2025.03.10 |
자주 사용하는 HTTP 상태 코드 별 에러 메시지 처리하기! (0) | 2025.03.04 |
Vercel로 프론트엔드 프로젝트 배포해보기 (0) | 2024.06.28 |