So initiieren Sie eine neue Klasse auf TSdiese Weise (Beispiel in, um C#zu zeigen, was ich will):
// ... some code before
return new MyClass { Field1 = "ASD", Field2 = "QWE" };
// ... some code after
[Bearbeiten]
Als ich diese Frage schrieb, war ich ein reiner .NET-Entwickler ohne viel JS-Wissen. Auch TypeScript war etwas völlig Neues, das als neue C # -basierte Obermenge von JavaScript angekündigt wurde. Heute sehe ich, wie dumm diese Frage war.
Wenn noch jemand nach einer Antwort sucht, schauen Sie sich bitte die folgenden möglichen Lösungen an.
Als erstes sollten wir in TS keine leeren Klassen für Modelle erstellen. Besser ist es, eine Schnittstelle oder einen Typ zu erstellen (je nach Bedarf). Guter Artikel von Todd Motto: https://ultimatecourses.com/blog/classes-vs-interfaces-in-typescript
LÖSUNG 1:
type MyType = { prop1: string, prop2: string };
return <MyType> { prop1: '', prop2: '' };
LÖSUNG 2:
type MyType = { prop1: string, prop2: string };
return { prop1: '', prop2: '' } as MyType;
LÖSUNG 3 (wenn Sie wirklich eine Klasse brauchen):
class MyClass {
constructor(public data: { prop1: string, prop2: string }) {}
}
// ...
return new MyClass({ prop1: '', prop2: '' });
oder
class MyClass {
constructor(public prop1: string, public prop2: string) {}
}
// ...
return new MyClass('', '');
In beiden Fällen benötigen Sie Casting-Typen möglicherweise nicht manuell, da sie vom Funktions- / Methodenrückgabetyp aufgelöst werden.
return new MyClass { Field1: "ASD", Field2: "QWE" };