[typescript] 컴파일러 플래그를 사용하여 rootDirs 설정하기

TypeScript에서 프로젝트를 작업할 때 여러 디렉토리에 분산된 소스 코드를 효과적으로 다루고 싶을 때가 있습니다. 이때 rootDirs 컴파일러 플래그를 사용하여 TypeScript 컴파일러에게 여러 소스 디렉토리를 알려줄 수 있습니다.

rootDirs란 무엇인가요?

rootDirs는 TypeScript 컴파일러에게 여러 소스 디렉토리가 있는 프로젝트를 컴파일할 때 어디서부터 시작해야 하는지를 알려주는 플래그입니다. 이것을 사용하면 소스 코드가 여러 디렉토리에 흩어져 있을 때 컴파일 과정에서 문제가 생기는 것을 방지할 수 있습니다.

rootDirs 설정 방법

tsconfig.json 파일에서 rootDirs 옵션을 설정하여 TypeScript 컴파일러에게 여러 소스 디렉토리를 알려줄 수 있습니다. 아래는 예제 tsconfig.json 파일의 설정입니다.

{
  "compilerOptions": {
    "rootDirs": [
      "src",
      "otherSrc"
    ],
    "outDir": "dist"
  }
}

위 예제에서 rootDirs 옵션은 srcotherSrc 디렉토리를 소스 디렉토리로 설정하고, outDir은 컴파일된 결과물을 저장할 디렉토리를 설정합니다.

rootDirs 플래그와 절대 경로

rootDirs를 사용할 때 주의할 점 중의 하나는 절대 경로 문제입니다. rootDirs를 사용하면 상대 경로를 사용하는 것이 까다로워집니다. 이런 점을 감안하여 절대 경로 지원을 위해 baseUrlpaths 옵션과 함께 사용해야 합니다.

이와 같은 방법으로 TypeScript의 rootDirs 플래그를 활용하여 스마트한 소스 코드 구조를 유지할 수 있습니다.

더 많은 정보를 알고 싶다면 TypeScript 공식 문서를 참고하시기 바랍니다.