O IDE usado é o WebStorm 11.0.3, o tslint está configurado e funciona, mas trava porque tenta analisar grandes arquivos de biblioteca * .d.ts.
Existe uma maneira de ignorar um arquivo ou diretório específico?
O IDE usado é o WebStorm 11.0.3, o tslint está configurado e funciona, mas trava porque tenta analisar grandes arquivos de biblioteca * .d.ts.
Existe uma maneira de ignorar um arquivo ou diretório específico?
Respostas:
Atualização para tslint v5.8.0
Conforme mencionado por Saugat Acharya , agora você pode atualizar as opções da CLI do tslint.json :
{
"extends": "tslint:latest",
"linterOptions": {
"exclude": [
"bin",
"lib/*generated.js"
]
}
}
Mais informações nesta solicitação de recebimento .
Este recurso foi introduzido com o tslint 3.6
tslint \"src/**/*.ts\" -e \"**/__test__/**\"
Agora você pode adicionar --exclude (ou -e) veja PR aqui.
CLI
usage: tslint [options] file ...
Options:
-c, --config configuration file
--force return status code 0 even if there are lint errors
-h, --help display detailed help
-i, --init generate a tslint.json config file in the current working directory
-o, --out output file
-r, --rules-dir rules directory
-s, --formatters-dir formatters directory
-e, --exclude exclude globs from path expansion
-t, --format output format (prose, json, verbose, pmd, msbuild, checkstyle) [default: "prose"]
--test test that tslint produces the correct output for the specified directory
-v, --version current version
você está olhando usando
-e, --exclude exclude globs from path expansion
linterOptionse nãocliOptions
tslint.json
Atualmente, usando o Visual Studio Code e o comando para desativar o tslint é
/* tslint:disable */
trabalhou para mim. Confira esta página, cerca de 3/4 do caminho existem alguns comandos de desativação https://c9.io/lijunle/tslint
Algo a notar. A desativação acima desativa TODAS as regras tslint nessa página. Se você deseja desativar uma regra específica no meio da página, há uma lista de regras. Assim, você pode desativar itens específicos, como
/* tslint:disable comment-format */
Além da resposta de Michael, considere uma segunda maneira: adicionar linterOptions.exclude a tslint.json
Por exemplo, você pode ter as tslint.jsonseguintes linhas:
{
"linterOptions": {
"exclude": [
"someDirectory/*.d.ts"
]
}
}
A partir de tslint v5.8.0você pode definir uma excludepropriedade sob sua linterOptionschave no seu tslint.jsonarquivo:
{
"extends": "tslint:latest",
"linterOptions": {
"exclude": [
"bin",
"**/__test__",
"lib/*generated.js"
]
}
}
Mais informações aqui .
cliOptionspor linterOptions.
Não são os outros que encontraram o problema. Infelizmente, há apenas um problema em aberto para excluir arquivos: https://github.com/palantir/tslint/issues/73
Então, eu tenho medo que a resposta seja não.
Eu tive que usar a sintaxe ** / * para excluir os arquivos em uma pasta:
"linterOptions": {
"exclude": [
"src/auto-generated/**/*",
"src/app/auto-generated/**/*"
]
},
Pode confirmar que, na versão tslint 5.11.0, ele funciona modificando o script lint no package.json, definindo o argumento exclude:
"lint": "ng lint --exclude src/models/** --exclude package.json"
Felicidades!!
Como complemento
Para desabilitar todas as regras da próxima linha // tslint:disable-next-line
Para desativar regras específicas para a próxima linha :// tslint:disable-next-line:rule1 rule2...
Para desativar todas as regras da linha atual :someCode(); // tslint:disable-line
Para desativar regras específicas para a linha atual :someCode(); // tslint:disable-line:rule1