Oi, Deyvison! Como vai?
O tsc só cria pastas dentro de dist quando existe arquivo .js gerado. Se não houver nenhum .ts sendo compilado naquele caminho, a pasta não aparece (pastas vazias não são emitidas).
Pelo seu tsconfig.json, tem dois pontos importantes:
- Você configurou:
outDir: "dist/js"
Isso faz o TypeScript gerar os arquivos em dist/js/... (e não direto em dist/...).
- Você limitou a compilação para:
include: ["app/**/*"]
Então somente arquivos .ts dentro de app/ entram na compilação.
1) Confirme onde o output está sendo gerado
Veja se existe algo como dist/js/app/... (por exemplo dist/js/app/config/...).
# terminal (exemplo)
ls dist
ls dist/js
ls dist/js/app
O que esse comando faz: lista as pastas para você confirmar se o tsc colocou o build em dist/js/....
2) Garanta que existe .ts dentro de app/config
Se app/config não tiver nenhum .ts, o tsc não vai criar dist/.../config.
Veja este exemplo:
// app/config/configuracao.ts
export const configuracao = {
ambiente: "dev"
};
O que esse código faz: cria um arquivo TypeScript dentro de app/config para o compilador gerar um .js e, aí sim, criar a pasta no dist.
Depois rode:
npm run compile
3) Se você quer que saia em dist/app/config (como no vídeo)
Ajuste seu tsconfig.json assim (mantendo a estrutura com app/... dentro de dist):
{
"compilerOptions": {
"outDir": "dist",
"target": "ES6"
},
"include": ["app/**/*"]
}
O que esse código faz: troca o destino de dist/js para dist, então o output fica dist/app/....
4) Se você quer que saia em dist/config (sem a pasta app)
Use rootDir + outDir:
{
"compilerOptions": {
"rootDir": "app",
"outDir": "dist",
"target": "ES6"
},
"include": ["app/**/*"]
}
O que esse código faz: define app como raiz dos fontes, então app/config/... vira dist/config/....
Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição.
Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado