IT이야기

tsconfig - 여러 디렉터리에 대해 올바른 컴파일러 출력 위치를 설정하는 방법(Atom)

cyworld 2022. 4. 3. 20:46
반응형

tsconfig - 여러 디렉터리에 대해 올바른 컴파일러 출력 위치를 설정하는 방법(Atom)

다음 디렉토리 구조를 가지고 있다고 가정해 보십시오.

public/
    js/
        lib/
test/
    ts/
lib/
    ts/

컴파일하도록 구성하려면 어떻게 해야 하는가?lib/ts/*.tspublic/js/lib/*.js그리고test/ts/*.tspublic/js/*.js?

각 ts 디렉토리에 원하는 tsconfig.json을 별도로 설정해 보았다.outDir, 그러나 내가 a를 추가하자마자.///<reference컴파일러는 원치 않는 디렉터리 트리를 파일로 출력한다(저장 및 빌드 시).

이 레이아웃으로 내가 원하는 걸 얻었어

public/
    js/
        lib/
        test/
src/
    ts/
        lib/
        test/

src/ts/test/tsconfig.json의 경우:

"outDir": "../../../public/js"

src/ts/lib/tsconfig.json의 경우:

"outDir": "../../../public/js/lib"

src/ts/test/test.ts의 경우:

/// <reference path="../lib/CoolStuff.ts" />

아톰(Atom)에서 src/ts/lib에서 작업하는 경우 빌딩에서 이러한 파일을 공개/js/lib로 컴파일한다.

src/ts/test에서 작업하는 경우 빌드는 참조된 모든 파일뿐만 아니라 *.ts를 테스트에서 컴파일한다.참조된 파일 컴파일을 방지할 방법은 없지만 적어도 이 레이아웃을 사용하면 동일한 위치로 이동한다.

lib/ts/.ts를 public/js/lib/.js로 컴파일하고 test/ts/.ts를 public/js/.js로 컴파일하려면 어떻게 구성하시겠습니까?

컴파일하려면test그리고public단일 컴파일 컨텍스트에서 ts 트리는 다음과 같다.

test/
    ts/
lib/
    ts/

그러므로 만약 당신이 a를 사용한다면outDir./public/js다음과 같은 혜택을 누리십시오.

public/
    js/
        test/
            ts/
        lib/
            ts/

상대적 성질 때문이다.lib/tstest/ts보존할 필요가 있다outDir이것은 당신이 당신의 프로젝트를 어떻게 조직하려고 하는지에 대한 제한이다.

프로젝트를 다음으로 재구성

ts/
    test/
    lib/

참조URL: https://stackoverflow.com/questions/29908200/tsconfig-how-to-set-correct-compiler-output-location-for-multiple-directories

반응형