Root Fields
Starting up are the root options in the TSConfig - these options relate to how your TypeScript or JavaScript project is set up.
# Arquivos - files
Especifica uma lista de arquivos permitidos para incluir no programa. Um erro ocorre se qualquer um dos arquivos não puder ser encontrado.
{" ": {}," ": ["core.ts","sys.ts","types.ts","scanner.ts","parser.ts","utilities.ts","binder.ts","checker.ts","tsc.ts"]}
Esta opção é útil quando você tem uma quantia pequena de arquivos e não precisa utilizar um glob para se referir a diversos arquivos.
Se você precisa utilizar glob, então use include
.
# Estender - extends
O valor de extends
é uma string que contém o caminho para outro arquivo de configuração do qual ele herdará.
O caminho pode usar o estilo de resolução do Node.Js
A configuração do aquivo base é carregada primeiro, e então sobrescrita por aquelas presentes no arquivo de configuração herdado. Todos os caminhos relativos encontrados no arquivo de configuração serão resolvidos relativamente ao arquivo de configuração em que estes se originaram.
Vale notar que files
, include
e exclude
da configuração que está sendo estendida sobrescreve aquelas definidas na configuração base, e circularidade entre arquivos de configuração não é permitida.
Atualmente, a única propriedade de top-level que é excluída da herança é references
.
Exemplo
configs/base.json
:
{" ": {" ": true," ": true}}
tsconfig.json
:
{" ": "./configs/base"," ": ["main.ts", "supplemental.ts"]}
tsconfig.nostrictnull.json
:
{" ": "./tsconfig"," ": {" ": false}}
Propriedades com caminhos relativos encontrados no arquivo de configuração, e que não sejam excluídas da herança, serão resolvidos relativamente ao arquivo de configuração em que estas se originaram.
- Default:
false
- Released:
# Incluir - include
Especifica um array de nomes de arquivos ou padrões a serem incluídos no programa. Esses nomes de arquivo são resolvidos em relação ao diretório que contém o arquivo tsconfig.json.
json
{"include": ["src/**/*", "tests/**/*"]}
Isso incluirá:
.├── scripts ⨯│ ├── lint.ts ⨯│ ├── update_deps.ts ⨯│ └── utils.ts ⨯├── src ✓│ ├── client ✓│ │ ├── index.ts ✓│ │ └── utils.ts ✓│ ├── server ✓│ │ └── index.ts ✓├── tests ✓│ ├── app.test.ts ✓│ ├── utils.ts ✓│ └── tests.d.ts ✓├── package.json├── tsconfig.json└── yarn.lock
include
e exclude
suporta caracteres curinga para criar padrões globais:
*
corresponde a zero ou mais caracteres (excluindo separadores de diretório)?
corresponde a qualquer caractere (excluindo separadores de diretório)**/
corresponde a qualquer diretório aninhado a qualquer nível
Se um padrão global não incluir uma extensão de arquivo, apenas os arquivos com extensões compatíveis serão incluídos (por exemplo: .ts
, .tsx
, e .d.ts
por padrão, com .js
e .jsx
se allowJs
for definido como verdadeiro).
# Excluir - exclude
Especifica uma array de nomes de arquivos ou padrões que devem ser ignorando durante o include
.
Importante: exclude
altera apenas os arquivos que estão nos resultados da configuração include
.
Um arquivo marcado como exclude
ainda pode fazer parte do seu código através de uma instrução import
, uma inclusão de types
, uma diretiva /// <reference
ou sendo relacionado na lista de files
.
Não é um mecanismo que impede um arquivo ser incluído no código base - apenas altera o que a configuração include
pode selecionar.
# Referências - references
As referências de projetos são uma forma de estruturar seus programas TypeScript em partes menores. Usar referências de projetos pode melhorar muito o tempo de construção e de interação com o editor, forçar uma separação lógica entre os elementos e organizar seu código de novas formas e métodos mais aprimorados.
Você pode ler mais sobre como as referências funcionam na seção Referências de Projetos.
- Default:
false