Поэтому у меня есть стандартная структура папок
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
.
Однако это не самая удобная вещь.
Кто-нибудь сталкивался с этой проблемой и нашел хорошее решение?