Ich habe Funktion ein Objekt als Parameter wie folgt aus:Typoskript 2.2 Schnittstellen erweitern Objekttyp
interface Options {
foo?: string;
bar?: number;
};
function fooNction(opts: Options): void {
}
Dies funktioniert in einigen Fällen in Ordnung, aber nicht alle:
fooNction({foo: "s"}); // OK
fooNction({a: "x"}); // fine as TS gives an Error as expected
fooNction("hello"); // no Error...
Ich habe versucht, meine Schnittstelle zu erweitern von TS 2.2 Objekttyp wie diese
interface Options extends object {
foo?: string;
bar?: number;
};
Grundtypen zu verbieten, aber Typoskript sagt: „Kann nicht schöner Name‚o bject '".
Gibt es eine Möglichkeit, eine Schnittstelle zu definieren, muss ein Objekt sein, aber hat kein Pflichtfeld?