Вопрос проверяет знание инструментов статического анализа кода и pre-commit хуков для автоматизации проверок.
Линтеры — это инструменты статического анализа кода, которые проверяют синтаксис, стиль и потенциальные ошибки без выполнения программы. Они помогают командам соблюдать единые правила оформления и избегать типичных багов. Наиболее распространённые линтеры в JavaScript-экосистеме: ESLint (гибкий, с поддержкой плагинов и кастомных правил) и Prettier (автоматическое форматирование кода). ESLint часто используют вместе с TypeScript (через @typescript-eslint) и React (eslint-plugin-react).
Husky — это npm-пакет, упрощающий настройку git-хуков. Git-хуки — это скрипты, которые запускаются при определённых событиях, например, pre-commit (перед коммитом) или pre-push (перед отправкой изменений). С помощью Husky можно автоматически запускать линтеры, форматтеры и тесты перед коммитом, чтобы в репозиторий не попал код с ошибками или нарушениями стиля.
// package.json
{
"scripts": {
"lint": "eslint . --ext .js,.ts",
"format": "prettier --write ."
},
"lint-staged": {
"*.{js,ts,tsx}": ["eslint --fix", "prettier --write"]
},
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
}
}В этом примере при попытке сделать коммит Husky запускает lint-staged, который применяет ESLint и Prettier только к изменённым файлам. Это ускоряет проверку и не требует полного сканирования проекта.
Линтеры и Husky — стандарт современной разработки, особенно в командных проектах. Они автоматизируют контроль качества кода, экономят время на код-ревью и предотвращают попадание проблемного кода в основную ветку. Рекомендуется внедрять их в любой проект с участием нескольких разработчиков.
Уровень
Рейтинг:
4
Сложность:
3
Навыки
JavaScript
Git
Ключевые слова
Подпишись на React Developer в телеграм
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию