Je voudrais spécifier que la fonction prend un tableau d'objets comme paramètre, mais je n'ai pas de type particulier défini pour l'objet (sorte de "type anonyme")
bagTotal = (products) => {
// function does stuff
}
Je comprends que je peux le faire:
bagTotal = (products: any[]) => {
// function does stuff
}
mais c'est un peu plus détendu que ce que je veux: être strict avec mon TypeScript.
products
est un tableau d'objets de même apparence comme tous les objets ont un nom, un prix, une description.
comment puis-je le déclarer?
Je veux faire quelque chose comme
bagTotal = (products: [{name: string, price: number, description: string}]) => {
// function does stuff
}
mais ce n'est pas vrai. Comment puis-je le déclarer?
Si vous déclarez un tableau d'un objet spécifique et que vous souhaitez spécifier le type des variables dans les objets, je créerais une classe pour l'objet comme ceci:
class Item(){
name: string;
description: string;
etc: any
constructor() {
this.name;
this.description;
this.etc;
}}
Ensuite, vous pouvez spécifier le tableau comme un tableau d'objets d'élément:
itemArray: Array<Item>;