Angular -cli: Использование ng lint

Я знаю, что angular -cli использует codelizer, который использует lint.js

При использовании команды: ng lint

Может ли он автоматически исправить форматирование? или он будет только уведомлять об ошибках форматирования?

ng lint --help выводит все команды справки для angular -cli.

Ответ 1

Обновленный ответ для Angular CLI v6.x, 7.x, 8.x:

ng lint <project-name> --fix

где <имя-проекта> - это "имя:" из package.json

- ответ для Angular CLI v1.x -

ng lint -fix

- Оригинальный ответ ниже -

Чтобы tslint автоматически исправлял много ошибок, запустите следующее в корне вашего кода. Очевидно, что он может только автоматически исправлять более простые проблемы, такие как let → const, "" → 'и т.д.

npx tslint src/**/*.ts --fix

Вчера я сделал это для автоматического устранения -fix сотен проблем let → const в наших довольно больших базах кода. Простое рассмотрение изменений до их фиксации заняло достаточно много времени, а исправление их вручную заняло бы более одного дня.

Ответ 2

Для Angular 6. 0+ вы можете запустить ng lint с автофиксом следующим образом:

ng lint <project> --fix

где <project> - это имя, которое вы дали своему проекту при запуске ng new.

Узнайте больше здесь: https://github.com/angular/angular-cli/wiki/lint

Ответ 3

Функциональность, о которой вы просите, частично доступна в эти дни в код VS с помощью расширение TSLint, которое поддерживает автоматическое исправление для некоторых (но не всех) предупреждений TSLint по умолчанию.

Я использую его в течение нескольких недель, и я нахожу его весьма полезным.

Ответ 4

По-видимому, Angular 6.0 и новее изначально поддерживают эту функцию.


Для предугловой 6.0:

ng lint запускает tslint (TypeScript linter), который просто печатает ошибки linting. AFAIK, он не позволяет напрямую исправлять найденные проблемы (по состоянию на 16 ноября)

Существуют проекты под названием tslint-fix которые направлены на исправление ряда так называемых автоматически исправляемых проблем.