J'ai ce code:

const reducer = (element:number, index: number) => [element]; //es lint error.
const positionsArray = $.map(this.positions, reducer);

Je lance un Float32Array (c'est this.positions) dans un tableau js. J'obtiens l'erreur : 'index' est défini mais jamais utilisé.eslint@typescript-eslint/no-unused-vars

Je ne peux pas appliquer le "// eslint-disable-line no-unused-vars" (ce qui d'ailleurs je ne pense pas que ce soit une solution agréable)

Comment se débarrasser de cette erreur pour ce cas où je n'ai pas besoin de l'index ? J'ai vérifié réduire et essayer de récupérer l'accumulateur mais je n'y suis pas parvenu. Merci.

ÉDITER: Si je ne définis pas l'index, j'obtiens cette erreur : entrez la description de l'image ici

0
rustyBucketBay 4 oct. 2020 à 02:56

1 réponse

Meilleure réponse

Ne définissez pas le paramètre. Ni TypeScript ni JavaScript ne vous obligent à utiliser tous les paramètres qu'un rappel peut accepter.

Vous pouvez également convertir le tableau typé en un tableau normal en appelant l'itérateur - il semble que .map de jQuery ne se comporte pas bien avec lui, alors utilisez plutôt plain JS :

const positionsArray = [...this.positions].map(element => [element]);

Si vous voulez juste obtenir un tableau simple à partir du tableau typé, n'utilisez pas .map, invoquez simplement l'itérateur seul :

const positionsArray = [...this.positions];
2
CertainPerformance 4 oct. 2020 à 00:18