How to lint entire folder using tslint

梦想与她 提交于 2019-11-30 10:53:39

问题


Is that possible to lint entire folder using tslint?

Using eslint it is possible to do eslint ./src to validate whole folder.

When i try to do the same for tslint - i am getting an error Error: EISDIR: illegal operation on a directory. In their examples on the site - they show how to validate single file, which is not the case usually.

Is that possible to validate my project without extra things like gulp-tslint, just from the command line?


回答1:


You can use a glob to lint multiple files.

Normally, if you just pass a glob as is, your shell will expand it and pass the resulting files to TSLint. So for example, in bash 4+ with the globstar option enabled, you could do the following to lint all .ts and .tsx files:

tslint src/**/*.ts{,x}

You're probably better off though using a command that will work consistently across platforms and shells though. For this, you can pass the glob in quotes. When in quotes, the glob will get passed as is to TSLint which will handle it with node-glob. You could then run the following command to get the same results as above:

tslint 'src/**/*.ts?(x)'



回答2:


There is now a --project option for this. Example:

tslint --project .

From the docs:

-p, --project:

The path or directory containing a tsconfig.json file that will be used to determine which files will be linted. This flag also enables rules that require the type checker.




回答3:


If your project has a tsconfig.json you can aproach --project advange.

In my case I have a nativescript project wich includes a tsconfig.ts at project root, so I have this:

Note that in the json 'node_modules' and 'platforms' directories are excluded. This means that all files in the project are going to be mapped except 'node_modules' and 'platforms' directories.

I have added this scripts at my package.json, 'tslint' to log the errors and 'tslint-fix' to fix the errors.

"scripts": {
    "tslint": "tslint -p tsconfig.json",
    "tslint-fix": "tslint --fix -p tsconfig.json"
}


来源:https://stackoverflow.com/questions/36447910/how-to-lint-entire-folder-using-tslint

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!