Как передать несколько исходных файлов в компилятор TypeScript?

TypeScript предназначен для крупномасштабных проектов JavaScripty, которые обычно состоят из нескольких файлов, созданных внутри компании, и библиотек, созданных извне. Как компилятор TypeScript (tsc) ожидает, что вы предоставите ему полный набор файлов, составляющих проект?

Ответ 1

dir *.ts /b /s > ts-files.txt
tsc @ts-files.txt
del ts-files.txt

Это скомпилирует все *.ts файлы в рабочем каталоге и его подкаталогах. Если вы не хотите включать вспомогательные каталоги, просто удалите часть /s из первой строки.

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

tsc @ts-files.txt --out ..\output/deerchao.web.js --removeComments

Ответ 2

tsc может скомпилировать несколько источников в последовательности, если вы просто укажете имена в порядке:

tsc foo.ts bar.ts

Вы также можете передать текстовый файл, содержащий список файлов и аргументы командной строки из текстового файла, используя аргумент командной строки @.

tsc @compile.txt

и compile.txt может выглядеть так:

--module amd
foo.ts
bar.ts

Также обратите внимание, что если в файлах ссылки другие через import, tsc будут автоматически вычислять это без необходимости явно указывать файл, от которого он зависит.

Ответ 3

Если кому-то это понадобится для Mac OS X:

find . -name "*.ts" -type f >ts-files.txt
/usr/local/bin/tsc @ts-files.txt --module CommonJS --out ./Deploy/ServerMain.js --removeComments
rm ts-files.txt

Ответ 4

С TypeScript 1.5 (бета, но окончательная версия должна быть там в ближайшее время), вы можете создать файл tsconfig.json для настройки компилятора TypeScript и файлов для компиляции (между прочим). См. Мой ответ: Как смотреть и компилировать все источники TypeScript?

Ответ 5

Или просто:

find ./my/path/ -name \"*.ts\" -type f | tsc

Ответ 6

Если кому-то требуется предварительное преобразование файлов перед фактической компиляцией проекта, используйте отдельный tsconfig с параметром компилятора - project.

Скомпилируйте проект с допустимым конфигурационным файлом. Аргумент может быть файловым путем к допустимому файлу конфигурации JSON или пути к каталогу в каталог, содержащий файл tsconfig.json. Посмотреть tsconfig.json документацию для более подробной информации.

Одним из вариантов использования будет необходимость в полученных JS файлах, используемых впоследствии в аргументах командной строки для сценариев ионных приложений.