Ich möchte string
mit einer Methode erweitern, die eine Enumeration übergeben muss. Wie importiere ich diese Enumeration in die Deklarationsdatei?Wie Enumeration in Schnittstelle Deklarationsdatei (D.ts) importieren
CapitalizationStyle.tsx:
export enum CapitalizationStyle {
None = 0,
Lowercase = 1,
Word = 2
}
StringExtensions.d.ts:
import { CapitalizationStyle } from "Utils/CapitalizationStyle"; //This line breaks everything.
declare interface String {
applyCapitalizationStyle(this: string, style: CapitalizationStyle): string;
}
Der Import bricht die Interface-Deklaration, wie wenn die Erklärung nicht mehr existiert. Alle Erweiterung Implementierungen der String-Klasse so bald ungültig werden, wie ich den Import hinzu:
StringExtensions.tsx:
Minimal reproduzierbaren Beispielprojekt: https://wetransfer.com/downloads/d1a707c0ac734985b877058967c35a6820171212143715/410f48
Können Sie genauer erklären "bricht alles"? Hast du einen TSLint Fehler? Ist es durch Änderung "TS1192: hat keinen Standard-Export"? –
msanford
Ich habe einige weitere Details in meinem ursprünglichen Beitrag hinzugefügt, um dies zu verdeutlichen. Dieser Import bricht die ganze Datei ab, so als ob keine der Deklarationen (StringExtensions.d.ts) mehr existiere, mache alle Implementierungen ungültig (StringExtension.tsx) – sixtstorm1