Как набрать проверку одного файла из командной строки, используя настройки в tsconfig.json? - PullRequest
0 голосов
/ 02 ноября 2018

Обычно я запускаю tsc -p ./tsconfig.json, который проверяет все файлы в папке ./src относительно tsconfig.

Но если я запускаю tsc -p ./tsconfig.json src/specific-file.ts, он жалуется

ошибка TS5042: параметр 'проект' нельзя смешивать с исходными файлами в командной строке.

Итак, если я удаляю эту опцию и запускаю tsc src/specific-file.ts, она проверяет файл, но не использует никаких настроек из tsconfig (потому что я не указал файл tsconfig?).

Как мне запустить tsc для одного файла и использовать настройки в tsconfig, которые в противном случае использовались бы для всего проекта?

Ответы [ 2 ]

0 голосов
/ 02 ноября 2018

Я не знаю действительно хорошего решения, кроме написания собственного инструмента командной строки с использованием API компилятора TypeScript. Вы можете рассмотреть два более простых подхода:

  1. Напишите скрипт, который генерирует временный файл tsconfig.json, который расширяет ваш исходный tsconfig.json и устанавливает files именно на тот файл, который вы хотите. Однако, если другие файлы содержат глобальные объявления, необходимые для проверки типа указанного вами файла, другие файлы могут не загружаться, поэтому этот подход может не работать.

  2. Напишите скрипт, который запускает tsc для всего проекта и фильтрует выходные данные, как показано в этот ответ . Однако, если ваше беспокойство касалось производительности, это не поможет.

0 голосов
/ 02 ноября 2018

Убедитесь, что ваш абсолютный путь не содержит пробелов, и если вы по-прежнему получаете сообщение об ошибке, это может быть просто потому, что tsconfig.json предназначен для настройки проектов, а аргументы командной строки - для файлов.

...