Как вставить всю папку с помощью tslint
Возможно ли использовать всю папку с помощью tslint?
С помощью eslint можно выполнить eslint ./src
для проверки всей папки.
Когда я пытаюсь сделать то же самое для tslint - я получаю сообщение об ошибке Error: EISDIR: illegal operation on a directory
. В своих примерах на сайте - они показывают, как проверять один файл, что обычно не так.
Можно ли проверить мой проект без дополнительных вещей, таких как gulp-tslint
, только из командной строки?
Ответы
Ответ 1
Вы можете использовать glob для многократных файлов.
Обычно, если вы просто передаете glob как есть, ваша оболочка расширит его и передаст результирующие файлы в TSLint. Так, например, в bash 4+ с включенной опцией globstar вы можете сделать следующее для всех файлов .ts
и .tsx
:
tslint src/**/*.ts{,x}
Вы, вероятно, лучше, хотя используете команду, которая будет работать последовательно между платформами и оболочками. Для этого вы можете передать glob в кавычки. Когда в кавычках glob будет передан как TSLint, который будет обрабатывать его с помощью node-glob. Затем вы можете выполнить следующую команду, чтобы получить те же результаты, что и выше:
tslint 'src/**/*.ts?(x)'
Ответ 2
Теперь для этого есть опция --project
. Пример:
tslint --project .
Из документов:
-p, --project:
Путь или каталог, содержащий файл tsconfig.json, который будет используется для определения, какие файлы будут помечены. Этот флаг также позволяет правила, которые требуют проверки типа.
Ответ 3
Если у вашего проекта есть tsconfig.json, вы можете воспользоваться преимуществом --project.
В моем случае у меня есть проект nativescript, который включает tsconfig.ts в корне проекта, поэтому у меня есть это:
![enter image description here]()
Обратите внимание, что в каталогах json 'node_modules' и 'platform' исключены. Это означает, что все файлы в проекте будут отображаться, кроме каталогов 'node_modules' и 'platform'.
Я добавил эти сценарии в мой package.json, "tslint" для регистрации ошибок и "tslint-fix" для исправления ошибок.
scripts: {
tslint: "tslint -p tsconfig.json",
tslint-fix: "tslint --fix -p tsconfig.json"
}