Задать вопрос
@karpo518

Почему Typescript ругается на файлы js?

На проекте (React) идёт постепенная типизация кода и часто требуется подключение компонентов .js в новых компонентах .tsx. Но если подключить компонент .js в компоненте .tsx, то проект не собирается из-за ошибок TypeScript в js файлах. В итоге иногда чтобы создать новый компонент tsx в некоторых случаях приходится типизировать десятки js компонентов, которые нужны в этом компоненте.

Пробовал использовать @ts-ignore перед строкой импорта компонента js + перед строкой, в которой используется компонент, но это не помогает. Кроме того, TypeScript ругается не только на файлы js, которые используются в файлах tsx, но и на всё дерево дочерних компонентов подключаемого файла js. Как можно отключить это поведение?

tsconfig.js
const fs = require('fs');

const config = {
  compilerOptions: {
    target: 'es2019',
    jsx: 'react',
    module: 'ESNext',
    moduleResolution: 'bundler',
    allowJs: true,
    checkJs: false,
    experimentalDecorators: true,
    baseUrl: './',
    esModuleInterop: true,
    strictPropertyInitialization: false,
    strict: true,
    paths: {
      'site/*': ['*'],
      'root/*': ['*'],
      ...
    },
  },
  exclude: [
    'node_modules',
    '**/*.js'
  ]
};

fs.writeFileSync('tsconfig.json', JSON.stringify(config));
// eslint-disable-next-line no-console
console.log('TSCONFIG CREATED - DONE!\n');

  • Вопрос задан
  • 40 просмотров
Подписаться 1 Средний 2 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы