커스텀 템플릿(Custom Templates)을 사용하면 Create React App의 모든 기능 위에 프로젝트에 필요한 도구를 추가한 템플릿을 만들어 활용할 수 있습니다. 공식적으로 지원하는 기본 템플릿은 2가지이지만, NPM에서 검색하면 매우 다양한 커스텀 템플릿이 검색 될 정도로 만들기 쉽고 여러 곳에서 커스텀 템플릿이 사용됩니다.
템플릿 구성
템플릿을 만들기 위한 구조는 다음과 같습니다. 템플릿 디렉토리에 기본적으로 다음의 파일이 필요합니다. (참고)
template/# 템플릿 디렉토리├── public/# 정적 에셋 디렉토리│ └── index.html # 스태틱 엔트리 파일├── src/# 프로젝트 소스 디렉토리│ └── index.js # 엔트리 파일 (또는 index.tsx)├── README.md # NPM 용 ├── gitignore└── package.json # 패키지 관리 파일
디렉토리 / 파일
설명
template
Create React App이 설치 될 때 사용자의 앱 디렉토리에 복사됩니다.
template.json
템플릿의 구성 파일입니다. package 키를 사용하면 package.json 템플릿 종속성,
NPM 스크립트 등 새 프로젝트에 추가 하려는 모든 키/값을 제공 할 수 있습니다 .
{"package": {"dependencies": {"eslint-plugin-jsx-a11y":"^6.2.3","serve":"^11.2.0" },"scripts": {"serve":"serve -s build","build-and-serve":"npm run build && npm run serve" },"eslintConfig": {"extends": ["react-app","plugin:jsx-a11y/recommended"],"plugins": ["jsx-a11y"] } }}
template.json 파일의 dependencies, scripts 항목에 추가한 모든 값들은 Create Rect App의 기본 설정과 병합되며 Create React App 기본 값과 일치하는 모든 값은 대체됩니다.
템플릿 테스트
템플릿을 로컬에서 테스트하려면 file: 접두사 뒤에 템플릿 디렉토리 파일 경로를 전달합니다.