Zaczynam używać TypeScript w projekcie Node, nad którym pracuję w Visual Studio Code. Chciałem zastosować strategię „opt-in”, podobnie jak w przypadku Flow. Dlatego umieszczam // @ts-check
na początku mojego .js
pliku w nadziei, że włączę TS dla tego pliku. Ostatecznie chcę mieć takie same wrażenia z „lintingu” jak Flow, dlatego zainstalowałem wtyczkę TSLint, aby zobaczyć ostrzeżenia / błędy Intellisense.
Ale z moim plikiem wyglądającym tak:
// @ts-check
module.exports = {
someMethod: (param: string): string => {
return param;
},
};
a mój tsconfig.json
plik wygląda jak ...
{
"compilerOptions": {
"target": "es2016",
"module": "commonjs",
"allowJs": true
}
}
Otrzymuję ten błąd: [js] 'types' can only be used in a .ts file.
jak pokazano poniżej na obrazku.
Widziałem to pytanie, które zalecało wyłączenie walidacji javascript w vscode, ale wtedy nie pokazuje mi żadnych informacji TypeScript Intellisense.
Próbowałem ustawienie tslint.jsEnable
się true
w moich ustawieniach vscode jak wspomniano w TSLint docs przedłużających ale bez powodzenia tam.
Jaka jest prawidłowa konfiguracja, aby używać .js
plików z TypeScript i pobierać Intellisense, aby wiedzieć, jakie są błędy w moim kodzie, zanim uruchomię jakiekolwiek polecenia TS?
.ts
pokazywać mi błędy / ostrzeżenia TS zgodnie z oczekiwaniami. Wydaje mi się, że to może zadziałać, ale liczyłem na większą część metody opt-in przy @ts-check
jednoczesnym zachowaniu wszystkich moich rozszerzeń.js