Prüfen Sie, ob ein Objekt zur Laufzeit eine Schnittstelle mit TypeScript implementiert.
Ich lade eine JSON-Konfigurationsdatei zur Laufzeit und benutze eine Schnittstelle, um die erwartete Struktur zu definieren:
interface EngineConfig {
pathplanner?: PathPlannerConfig;
debug?: DebugConfig;
...
}
interface PathPlannerConfig {
nbMaxIter?: number;
nbIterPerChunk?: number;
heuristic?: string;
}
interface DebugConfig {
logLevel?: number;
}
...
Dies erleichtert den Zugriff auf die verschiedenen Eigenschaften, da ich Autovervollständigungen usw. verwenden kann.
Frage: Gibt es eine Möglichkeit, diese Deklaration zu verwenden, um die Richtigkeit der von mir geladenen Datei zu überprüfen? dh dass ich keine unerwarteten Eigenschaften habe?