TS7006
Parametr niejawnie ma typ any
Parameter 'value' implicitly has an 'any' type.Własne słowa kompilatora. Nietłumaczone — to ten ciąg, który wkleiłeś w wyszukiwarkę.
Tryb ścisły znalazł parametr funkcji bez adnotacji i bez kontekstu, z którego można wywnioskować typ.
Odtworzenie
function double(value) {
return value * 2
}Build potwierdza, że to emituje dokładnie ten kod.
Dlaczego kompilator tak mówi
Parametr bez typu jest niesprawdzanym wejściem do funkcji. Przy `noImplicitAny` TypeScript nie pozwala wołającym przesyłać tam czegokolwiek, dopóki kontrakt nie mówi, co tam pasuje.
Naprawy
- 01
function double(value: number) { return value * 2 }Dodaj konkretny typ wejścia, gdy operacja naprawdę wymaga liczby.
- 02
function identity<T>(value: T): T { return value }Użyj parametru typu, gdy funkcja zachowuje typ dostarczony przez wywołującego.
Wniosek
Nie zastępuj odruchowo niejawnego `any` jawnym. Opisz prawdziwe wejście albo zamodeluj zależność typem generycznym.
