Comment initier une nouvelle classe de TScette manière (exemple C#pour montrer ce que je veux):
// ... some code before
return new MyClass { Field1 = "ASD", Field2 = "QWE" };
// ... some code after
[modifier]
Lorsque j'écrivais cette question, j'étais un développeur .NET pur sans beaucoup de connaissances JS. De plus, TypeScript était quelque chose de complètement nouveau, annoncé comme un nouveau surensemble de JavaScript basé sur C #. Aujourd'hui, je vois à quel point cette question était stupide.
Quoi qu'il en soit, si quelqu'un cherche toujours une réponse, veuillez consulter les solutions possibles ci-dessous.
La première chose à noter est que dans TS, nous ne devons pas créer de classes vides pour les modèles. Le meilleur moyen est de créer une interface ou un type (selon les besoins). Bon article de Todd Motto: https://ultimatecourses.com/blog/classes-vs-interfaces-in-typescript
SOLUTION 1:
type MyType = { prop1: string, prop2: string };
return <MyType> { prop1: '', prop2: '' };
SOLUTION 2:
type MyType = { prop1: string, prop2: string };
return { prop1: '', prop2: '' } as MyType;
SOLUTION 3 (quand vous avez vraiment besoin d'un cours):
class MyClass {
constructor(public data: { prop1: string, prop2: string }) {}
}
// ...
return new MyClass({ prop1: '', prop2: '' });
ou
class MyClass {
constructor(public prop1: string, public prop2: string) {}
}
// ...
return new MyClass('', '');
Bien sûr, dans les deux cas, vous n'aurez peut-être pas besoin de types de conversion manuellement car ils seront résolus à partir du type de retour de fonction / méthode.
return new MyClass { Field1: "ASD", Field2: "QWE" };