Поэтому у меня есть стандартная структура папок
dist/
src/
где src имеет мои.ts файлы, а dist имеет мои.js файлы. (У меня есть "outDir":"dist" в файле tsconfig.json и "includes" установлен в 'src').
Обратите внимание, что "dist" находится в моем файле gitignore, поэтому он не находится в управлении версиями, и поэтому, когда он переходит к Travis или CircleCI, ничего не происходит в папке dist до тех пор, пока я не запустил tsc.
Вот проблема: если я сначала запускаю npm install это не сработает, потому что у меня есть это в моем package.json:
"bin":{
"foo" :"dist/cli.js" // dist/cli.js does not exist yet
}
но если я запустил tsc first-tsc, тогда будут отсутствовать зависимости, которые ему нужны для компиляции, которые приходят, если я запускаю npm install.
Единственное, что я могу решить, это установить все необходимые зависимости tsc, затем запустить tsc, затем запустить npm install --production.
Однако это не самая удобная вещь.
Кто-нибудь сталкивался с этой проблемой и нашел хорошее решение?