J'ai une fonction:

function someFunction({ propertyA, propertyB })
{
  return 1;
}

Je veux donner aux propriétés de l'objet anonyme dans l'argument de la fonction un type explicite, mais l'utilisation de la syntaxe TypeScript typique pour cela (propertyA: boolean) entraînerait la mise d'un type là où la valeur va normalement puisque le : dans un littéral d'objet signifie "la propriété de gauche a la valeur de droite".

Je me demande comment je peux faire ça ? Le compilateur me donne des avertissements sur les propriétés ayant implicitement un type any. Mes excuses, c'est probablement assez basique mais j'ai cherché sur Google et regardé sur ce site et je ne trouve rien qui résout ce problème spécifique.

1
Mick McCarthy 17 nov. 2020 à 13:18

1 réponse

Meilleure réponse
function someFunction({ propertyA, propertyB }: {propertyA: boolean; propertyB: number }){
    //...

Ou, mieux encore : faites un type explicite :

interface SomeFunctionOpts{
    propertyA: boolean; 
    propertyB: number;
}

function someFunction({ propertyA, propertyB }: SomeFunctionOpts) {
    //...
2
spender 17 nov. 2020 à 10:36