javascript - Definiera en TypeScript-debugvariabel
Jag springer in i en vägg med vad jag antar borde vara en enkel uppgift - jag vill ha en enda variabel som avgör om applikationen är i felsökningsläge - alltså debug=false så att jag kan använda denna variabel, som du kanske förväntar dig, i vilken klass som helst och logga meddelanden därefter. Irriterande nog, oavsett vad jag försöker, kan jag helt enkelt inte få tillgång till denna variabel.
Jag har en app.ts-fil som importerar varje klass och skapar instanser av dem. Att definiera en global variabel högst upp i den här filen fungerade inte, och på samma sätt fungerade det inte att definiera dem i en global.d.ts-fil heller - kompilatorn kan helt enkelt inte se dem. För protokollets skull ser min tsconfig.json-fil ut så här:
{
"files": [
"./resources/assets/js/declarations/**/*.d.ts"
],
"compilerOptions": {
"noImplicitAny": true,
"target": "es2015"
}
}
Själva global.d.ts-filen är otroligt enkel...
declare let appDebug: boolean;
Och dess värde är inställt i app.ts-filen som nämnts tidigare. Vad är problemet? Hur kan jag i princip skicka detta värde till varje klass?
Svar #1
Inställningen files stöder inte globs/mönster - bara en uttrycklig lista av filer, så du bör se ett fel när du försöker kompilera i TypeScript via tsc -p . som klagar på "./resources/assets/js/declarations/**/*.d.ts"-delen.
Dokumentation här: http://www.typescriptlang.org/docs/handbook/tsconfig-json.html