ich Sie so etwas wie meine glauben ...
import * as foo: IFoo from "foo"
oder
import foo : IFoo from "foo"
Ist das korrekt?
This was discussed, but ultimately decided against.
Stattdessen wurde empfohlen, dass Sie declare module 'bar'
und ihm Ihre entsprechende Typisierung geben. Sobald das erledigt ist, können Sie import * as foo from "bar"
mit der richtigen Eingabe.
See this issue for more details on the recommended approach
Ein mögliches Beispiel:
untyped.d.ts
declare module "bar" {
const foo:IFoo;
export = foo;
}
tsconfig.json
{
"compilerOptions": {
...
},
"include": [
"untyped.d.ts",
"src/**/*.ts",
"src/**/*.tsx"
]
}
der Name "untyped.d.ts" hat hier keine wirkliche Bedeutung, ich benutze es nur persönlich als ein Sammelsurium für die untypisierten Module in meinen persönlichen Projekten. Fühlen Sie sich frei, es zu nennen, was auch immer sich für Sie richtig anfühlt.
p.s. Sie können auch die files
Array-Eigenschaft statt include
dafür verwenden, aber ich neige dazu, nicht zu stören, weil files
nicht die exclude
Eigenschaft respektiert, die für einige Leute verwirrend ist. See the docs for details.
Danke für die Antwort. Wo stelle ich die Moduldeklaration? (Das Modul, das ich Typinformationen für hinzufügen möchte, ist eine 3rd-Party-Abhängigkeit in 'node_modules') – mattnedrich
@mattnedrich Der einfachste Weg ist wahrscheinlich, eine' .d.ts'-Datei in Ihrem Projekt zu erstellen und diese Datei zum '' hinzuzufügen includes' Array Ihrer 'tsconfig.json'. Sie würden diese Deklaration in diese Datei schreiben. – Paarth
Danke! Können Sie der Vollständigkeit halber ein Beispiel hinzufügen, wie die Datei ".d.ts" aus der Datei "tsconfig.json" eingefügt werden kann? – mattnedrich