Вот что мы попробовали:
{
"compilerOptions": {
"target": "esnext",
"moduleResolution": "node",
"allowJs": true,
"jsx": "react"
},
"include": [
"src/**/*"
],
"exclude": [
"src/**/*.js",
"src/**/*.jsx",
]
}
Когда мы запускаем tsc
из командной строки, компилятор находит ошибки в файлах jsx
и js
.Например, мы видим эти ошибки.
src/components/foo/barHeaderStateOverview.jsx:90:46
- error TS8010: 'types' can only be used in a .ts file.
90 generateArbitraryData = (id: string, data: {path: string, title: string}) => {
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/components/foo/barHeaderStateOverview.jsx:101:65
- error TS1005: ',' expected.
101 const arbitrary = this.generateArbitraryData('weight', data : (string | number));
Возможно, проблема связана с этим поведением компилятора :
... если на файл B.ts ссылается другой файл A.ts, тогда B.ts нельзя исключить, если в списке «exclude» также не указан ссылочный файл A.ts.
Некоторые из наших файлов * .ts действительно импортируют * .js и *файлы .jsx.Есть ли способ сказать компилятору не проверять тип файлов * .js и * .jsx, которые импортирует файл * .ts?