Вопрос или проблема
Я использую последнюю версию IntelliJ IDEA и работаю над проектом, который использует как JavaScript, так и TypeScript. У меня возникла проблема: IntelliJ автоматически распознает .js файлы как скомпилированный вывод .ts файлов, когда они имеют одно и то же имя.
Каков текущий способ отключить автоматическое распознавание .js файлов как результата компиляции TypeScript в последней версии IntelliJ IDEA?
Пример:
Допустим, у меня есть следующие файлы в проекте:
src/
├── example.ts
└── example.js
Когда я открываю example.js, я вижу сообщение в верхней части файла «Исключен из компиляции». Это указывает на то, что IntelliJ IDEA считает этот .js файл результатом компиляции .ts файла, что мне не подходит.
Что я хочу достичь:
Я хочу, чтобы IntelliJ IDEA рассматривала как .ts, так и .js файлы как отдельные, редактируемые исходные файлы, без автоматического предположения, что .js файл является скомпилированным выводом.
Ответ или решение
Для отключения автоматического распознавания файлов с расширением .js как выходных файлов компиляции TypeScript в IntelliJ IDEA, выполните следующие шаги:
-
Откройте настройки проекта:
- В верхнем меню выберите
File
->Settings...
(илиIntelliJ IDEA
->Preferences...
на macOS).
- В верхнем меню выберите
-
Перейдите к настройкам TypeScript:
- В меню слева выберите
Languages & Frameworks
, затемTypeScript
.
- В меню слева выберите
-
Отключите опцию автоматического распознавания:
- Найдите раздел
TypeScript Compiler
и убедитесь, что параметрUse TypeScript
активирован. - В этом разделе может также находиться опция
Check tsconfig.json
и другие настройки, относящиеся к тому, как редактор обрабатывает TypeScript. Вам нужно будет убедиться, что IntelliJ IDEA не воспринимает .js файлы как выходные файлы для .ts. - Так как в последних версиях может отсутствовать прямая опция отключения автоподсказок, попробуйте внести изменения в конфигурацию tsconfig.json вашего проекта, если он присутствует.
- Найдите раздел
-
Настройка tsconfig.json:
- Возможно, вам придется изменить секцию
"include"
в вашемtsconfig.json
. Убедитесь, что в нее не включены файлы .js, если вы не хотите, чтобы они рассматривались в контексте TypeScript:{ "compilerOptions": { // ваши параметры компиляции }, "include": [ "src/**/*.ts" ], "exclude": [ "src/**/*.js" ] }
- Возможно, вам придется изменить секцию
-
Перезагрузите проект:
- После внесения изменений в настройки или tsconfig.json, рекомендуется перезагрузить проект в IntelliJ IDEA, чтобы изменения вступили в силу.
-
Проверка результатов:
- Откройте файл example.js и проверьте, исчезло ли сообщение "Excluded from compilation". Теперь оба файла .ts и .js должны рассматриваться как отдельные источники, которые вы можете редактировать без автоматического связывания.
Если после выполнения всех этих шагов проблема сохраняется, возможно, в будущих обновлениях IntelliJ IDEA появятся дополнительные опции для тонкой настройки обработки файлов. Рекомендуется следить за изменениями в документации и форумах поддержки IntelliJ IDEA.