2016-06-27 3 views
0

Dank für das Lesen,typescript - Wie kann ich tsconfig-Dateien dynamisch setzen?

ich ein Typoskript Setup mit schluck mit TSconfig haben derzeit wie folgt:

{ 
    "files": [ 
    "typings/index.d.ts", 
    "src/app/index.config.ts", 
    "src/app/index.constants.ts", 
    "src/app/common/settings.controller.ts" 
    .... 
    ], 
    "compilerOptions": { 
    "noImplicitAny": false, 
    "target": "es5", 
    "experimentalDecorators" : true, 
    "diagnostics" : true, 
    "rootDir" : "src/app", 
    "outDir": ".tmp/serve/app", 
    "module": "commonjs" 
    } 
} 

Dies funktioniert, mit Ausnahme jedes Mal schaffe ich eine andere ts-Datei, sagen src/app/common/Login .controller.ts, müsste ich dies im Array "files": [] oben hinzufügen.

Gibt es eine Möglichkeit, dass ich das dynamisch machen kann, so dass ich das "files" -Array nicht ständig aktualisieren muss?

Danke für Ihre Hilfe.

+1

Verwenden Sie Globs für die dynamischen Dateien? Z.B. '" Dateien ": [" typings/index.d.ts "," src/app/**/*. ts "], ...' –

+0

Ich habe das versucht. glob scheint nicht zu funktionieren. Es heißt "Datei" src/app/**/*. Ts "nicht gefunden." – Kostar

+1

Sie brauchen den 'files' Teil überhaupt nicht, da Sie' rootDir' verwenden, ich benutze ihn auch und ich habe keine 'Dateien', und jede Datei, die ich hinzufüge, wird automatisch kompiliert (solange sie irgendwo unter dem' ' rootDir') –

Antwort

1

Sie können Klackse für dynamische Dateien verwenden, wie Nikos wie erwähnt:

{ 
    "files": [ "src/app/**/*.ts" ] 
} 

Beachten Sie, war das Merkmal merged about a week ago und wie diese zu schreiben, nur es ist immer noch auf dem Master-Zweig so das ist wahrscheinlich, warum Sie bekommen der Fehler "nicht gefunden".

Sie können auch typescript-with-globs versuchen, um praktisch die gleiche Funktionalität zu erhalten, wenn Sie lieber auf TS warten, um eine Release-Version mit dieser Funktion zu erstellen.

+0

Danke für den Hinweis, Meine endgültige Lösung war, meinen TSC-Compiler von 1.7.5 auf 1.8.1 zu aktualisieren und dann mein tsconfig zu ändern, um "include" zu verwenden: ["src/app/**/*. Ts"] mit "Dateien": ["typings/index.d.ts"]. – Kostar